/********************************************************************************
* *
* This file is part of IfcOpenShell. *
* *
* IfcOpenShell is free software: you can redistribute it and/or modify *
* it under the terms of the Lesser GNU General Public License as published by *
* the Free Software Foundation, either version 3.0 of the License, or *
* (at your option) any later version. *
* *
* IfcOpenShell is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* Lesser GNU General Public License for more details. *
* *
* You should have received a copy of the Lesser GNU General Public License *
* along with this program. If not, see . *
* *
********************************************************************************/
/********************************************************************************
* *
* This file has been generated from IFC4x2.exp. Do not make modifications *
* but instead modify the python script that has been used to generate this. *
* *
********************************************************************************/
#include "../ifcparse/IfcSchema.h"
#include "../ifcparse/Ifc4x2.h"
using namespace IfcParse;
entity* IFC4X2_IfcActionRequest_type = 0;
entity* IFC4X2_IfcActor_type = 0;
entity* IFC4X2_IfcActorRole_type = 0;
entity* IFC4X2_IfcActuator_type = 0;
entity* IFC4X2_IfcActuatorType_type = 0;
entity* IFC4X2_IfcAddress_type = 0;
entity* IFC4X2_IfcAdvancedBrep_type = 0;
entity* IFC4X2_IfcAdvancedBrepWithVoids_type = 0;
entity* IFC4X2_IfcAdvancedFace_type = 0;
entity* IFC4X2_IfcAirTerminal_type = 0;
entity* IFC4X2_IfcAirTerminalBox_type = 0;
entity* IFC4X2_IfcAirTerminalBoxType_type = 0;
entity* IFC4X2_IfcAirTerminalType_type = 0;
entity* IFC4X2_IfcAirToAirHeatRecovery_type = 0;
entity* IFC4X2_IfcAirToAirHeatRecoveryType_type = 0;
entity* IFC4X2_IfcAlarm_type = 0;
entity* IFC4X2_IfcAlarmType_type = 0;
entity* IFC4X2_IfcAlignment_type = 0;
entity* IFC4X2_IfcAlignment2DHorizontal_type = 0;
entity* IFC4X2_IfcAlignment2DHorizontalSegment_type = 0;
entity* IFC4X2_IfcAlignment2DSegment_type = 0;
entity* IFC4X2_IfcAlignment2DVerSegCircularArc_type = 0;
entity* IFC4X2_IfcAlignment2DVerSegLine_type = 0;
entity* IFC4X2_IfcAlignment2DVerSegParabolicArc_type = 0;
entity* IFC4X2_IfcAlignment2DVertical_type = 0;
entity* IFC4X2_IfcAlignment2DVerticalSegment_type = 0;
entity* IFC4X2_IfcAlignmentCurve_type = 0;
entity* IFC4X2_IfcAnnotation_type = 0;
entity* IFC4X2_IfcAnnotationFillArea_type = 0;
entity* IFC4X2_IfcApplication_type = 0;
entity* IFC4X2_IfcAppliedValue_type = 0;
entity* IFC4X2_IfcApproval_type = 0;
entity* IFC4X2_IfcApprovalRelationship_type = 0;
entity* IFC4X2_IfcArbitraryClosedProfileDef_type = 0;
entity* IFC4X2_IfcArbitraryOpenProfileDef_type = 0;
entity* IFC4X2_IfcArbitraryProfileDefWithVoids_type = 0;
entity* IFC4X2_IfcAsset_type = 0;
entity* IFC4X2_IfcAsymmetricIShapeProfileDef_type = 0;
entity* IFC4X2_IfcAudioVisualAppliance_type = 0;
entity* IFC4X2_IfcAudioVisualApplianceType_type = 0;
entity* IFC4X2_IfcAxis1Placement_type = 0;
entity* IFC4X2_IfcAxis2Placement2D_type = 0;
entity* IFC4X2_IfcAxis2Placement3D_type = 0;
entity* IFC4X2_IfcBSplineCurve_type = 0;
entity* IFC4X2_IfcBSplineCurveWithKnots_type = 0;
entity* IFC4X2_IfcBSplineSurface_type = 0;
entity* IFC4X2_IfcBSplineSurfaceWithKnots_type = 0;
entity* IFC4X2_IfcBeam_type = 0;
entity* IFC4X2_IfcBeamStandardCase_type = 0;
entity* IFC4X2_IfcBeamType_type = 0;
entity* IFC4X2_IfcBearing_type = 0;
entity* IFC4X2_IfcBearingType_type = 0;
entity* IFC4X2_IfcBlobTexture_type = 0;
entity* IFC4X2_IfcBlock_type = 0;
entity* IFC4X2_IfcBoiler_type = 0;
entity* IFC4X2_IfcBoilerType_type = 0;
entity* IFC4X2_IfcBooleanClippingResult_type = 0;
entity* IFC4X2_IfcBooleanResult_type = 0;
entity* IFC4X2_IfcBoundaryCondition_type = 0;
entity* IFC4X2_IfcBoundaryCurve_type = 0;
entity* IFC4X2_IfcBoundaryEdgeCondition_type = 0;
entity* IFC4X2_IfcBoundaryFaceCondition_type = 0;
entity* IFC4X2_IfcBoundaryNodeCondition_type = 0;
entity* IFC4X2_IfcBoundaryNodeConditionWarping_type = 0;
entity* IFC4X2_IfcBoundedCurve_type = 0;
entity* IFC4X2_IfcBoundedSurface_type = 0;
entity* IFC4X2_IfcBoundingBox_type = 0;
entity* IFC4X2_IfcBoxedHalfSpace_type = 0;
entity* IFC4X2_IfcBridge_type = 0;
entity* IFC4X2_IfcBridgePart_type = 0;
entity* IFC4X2_IfcBuilding_type = 0;
entity* IFC4X2_IfcBuildingElement_type = 0;
entity* IFC4X2_IfcBuildingElementPart_type = 0;
entity* IFC4X2_IfcBuildingElementPartType_type = 0;
entity* IFC4X2_IfcBuildingElementProxy_type = 0;
entity* IFC4X2_IfcBuildingElementProxyType_type = 0;
entity* IFC4X2_IfcBuildingElementType_type = 0;
entity* IFC4X2_IfcBuildingStorey_type = 0;
entity* IFC4X2_IfcBuildingSystem_type = 0;
entity* IFC4X2_IfcBurner_type = 0;
entity* IFC4X2_IfcBurnerType_type = 0;
entity* IFC4X2_IfcCShapeProfileDef_type = 0;
entity* IFC4X2_IfcCableCarrierFitting_type = 0;
entity* IFC4X2_IfcCableCarrierFittingType_type = 0;
entity* IFC4X2_IfcCableCarrierSegment_type = 0;
entity* IFC4X2_IfcCableCarrierSegmentType_type = 0;
entity* IFC4X2_IfcCableFitting_type = 0;
entity* IFC4X2_IfcCableFittingType_type = 0;
entity* IFC4X2_IfcCableSegment_type = 0;
entity* IFC4X2_IfcCableSegmentType_type = 0;
entity* IFC4X2_IfcCaissonFoundation_type = 0;
entity* IFC4X2_IfcCaissonFoundationType_type = 0;
entity* IFC4X2_IfcCartesianPoint_type = 0;
entity* IFC4X2_IfcCartesianPointList_type = 0;
entity* IFC4X2_IfcCartesianPointList2D_type = 0;
entity* IFC4X2_IfcCartesianPointList3D_type = 0;
entity* IFC4X2_IfcCartesianTransformationOperator_type = 0;
entity* IFC4X2_IfcCartesianTransformationOperator2D_type = 0;
entity* IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type = 0;
entity* IFC4X2_IfcCartesianTransformationOperator3D_type = 0;
entity* IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type = 0;
entity* IFC4X2_IfcCenterLineProfileDef_type = 0;
entity* IFC4X2_IfcChiller_type = 0;
entity* IFC4X2_IfcChillerType_type = 0;
entity* IFC4X2_IfcChimney_type = 0;
entity* IFC4X2_IfcChimneyType_type = 0;
entity* IFC4X2_IfcCircle_type = 0;
entity* IFC4X2_IfcCircleHollowProfileDef_type = 0;
entity* IFC4X2_IfcCircleProfileDef_type = 0;
entity* IFC4X2_IfcCircularArcSegment2D_type = 0;
entity* IFC4X2_IfcCivilElement_type = 0;
entity* IFC4X2_IfcCivilElementType_type = 0;
entity* IFC4X2_IfcClassification_type = 0;
entity* IFC4X2_IfcClassificationReference_type = 0;
entity* IFC4X2_IfcClosedShell_type = 0;
entity* IFC4X2_IfcCoil_type = 0;
entity* IFC4X2_IfcCoilType_type = 0;
entity* IFC4X2_IfcColourRgb_type = 0;
entity* IFC4X2_IfcColourRgbList_type = 0;
entity* IFC4X2_IfcColourSpecification_type = 0;
entity* IFC4X2_IfcColumn_type = 0;
entity* IFC4X2_IfcColumnStandardCase_type = 0;
entity* IFC4X2_IfcColumnType_type = 0;
entity* IFC4X2_IfcCommunicationsAppliance_type = 0;
entity* IFC4X2_IfcCommunicationsApplianceType_type = 0;
entity* IFC4X2_IfcComplexProperty_type = 0;
entity* IFC4X2_IfcComplexPropertyTemplate_type = 0;
entity* IFC4X2_IfcCompositeCurve_type = 0;
entity* IFC4X2_IfcCompositeCurveOnSurface_type = 0;
entity* IFC4X2_IfcCompositeCurveSegment_type = 0;
entity* IFC4X2_IfcCompositeProfileDef_type = 0;
entity* IFC4X2_IfcCompressor_type = 0;
entity* IFC4X2_IfcCompressorType_type = 0;
entity* IFC4X2_IfcCondenser_type = 0;
entity* IFC4X2_IfcCondenserType_type = 0;
entity* IFC4X2_IfcConic_type = 0;
entity* IFC4X2_IfcConnectedFaceSet_type = 0;
entity* IFC4X2_IfcConnectionCurveGeometry_type = 0;
entity* IFC4X2_IfcConnectionGeometry_type = 0;
entity* IFC4X2_IfcConnectionPointEccentricity_type = 0;
entity* IFC4X2_IfcConnectionPointGeometry_type = 0;
entity* IFC4X2_IfcConnectionSurfaceGeometry_type = 0;
entity* IFC4X2_IfcConnectionVolumeGeometry_type = 0;
entity* IFC4X2_IfcConstraint_type = 0;
entity* IFC4X2_IfcConstructionEquipmentResource_type = 0;
entity* IFC4X2_IfcConstructionEquipmentResourceType_type = 0;
entity* IFC4X2_IfcConstructionMaterialResource_type = 0;
entity* IFC4X2_IfcConstructionMaterialResourceType_type = 0;
entity* IFC4X2_IfcConstructionProductResource_type = 0;
entity* IFC4X2_IfcConstructionProductResourceType_type = 0;
entity* IFC4X2_IfcConstructionResource_type = 0;
entity* IFC4X2_IfcConstructionResourceType_type = 0;
entity* IFC4X2_IfcContext_type = 0;
entity* IFC4X2_IfcContextDependentUnit_type = 0;
entity* IFC4X2_IfcControl_type = 0;
entity* IFC4X2_IfcController_type = 0;
entity* IFC4X2_IfcControllerType_type = 0;
entity* IFC4X2_IfcConversionBasedUnit_type = 0;
entity* IFC4X2_IfcConversionBasedUnitWithOffset_type = 0;
entity* IFC4X2_IfcCooledBeam_type = 0;
entity* IFC4X2_IfcCooledBeamType_type = 0;
entity* IFC4X2_IfcCoolingTower_type = 0;
entity* IFC4X2_IfcCoolingTowerType_type = 0;
entity* IFC4X2_IfcCoordinateOperation_type = 0;
entity* IFC4X2_IfcCoordinateReferenceSystem_type = 0;
entity* IFC4X2_IfcCostItem_type = 0;
entity* IFC4X2_IfcCostSchedule_type = 0;
entity* IFC4X2_IfcCostValue_type = 0;
entity* IFC4X2_IfcCovering_type = 0;
entity* IFC4X2_IfcCoveringType_type = 0;
entity* IFC4X2_IfcCrewResource_type = 0;
entity* IFC4X2_IfcCrewResourceType_type = 0;
entity* IFC4X2_IfcCsgPrimitive3D_type = 0;
entity* IFC4X2_IfcCsgSolid_type = 0;
entity* IFC4X2_IfcCurrencyRelationship_type = 0;
entity* IFC4X2_IfcCurtainWall_type = 0;
entity* IFC4X2_IfcCurtainWallType_type = 0;
entity* IFC4X2_IfcCurve_type = 0;
entity* IFC4X2_IfcCurveBoundedPlane_type = 0;
entity* IFC4X2_IfcCurveBoundedSurface_type = 0;
entity* IFC4X2_IfcCurveSegment2D_type = 0;
entity* IFC4X2_IfcCurveStyle_type = 0;
entity* IFC4X2_IfcCurveStyleFont_type = 0;
entity* IFC4X2_IfcCurveStyleFontAndScaling_type = 0;
entity* IFC4X2_IfcCurveStyleFontPattern_type = 0;
entity* IFC4X2_IfcCylindricalSurface_type = 0;
entity* IFC4X2_IfcDamper_type = 0;
entity* IFC4X2_IfcDamperType_type = 0;
entity* IFC4X2_IfcDeepFoundation_type = 0;
entity* IFC4X2_IfcDeepFoundationType_type = 0;
entity* IFC4X2_IfcDerivedProfileDef_type = 0;
entity* IFC4X2_IfcDerivedUnit_type = 0;
entity* IFC4X2_IfcDerivedUnitElement_type = 0;
entity* IFC4X2_IfcDimensionalExponents_type = 0;
entity* IFC4X2_IfcDirection_type = 0;
entity* IFC4X2_IfcDiscreteAccessory_type = 0;
entity* IFC4X2_IfcDiscreteAccessoryType_type = 0;
entity* IFC4X2_IfcDistanceExpression_type = 0;
entity* IFC4X2_IfcDistributionChamberElement_type = 0;
entity* IFC4X2_IfcDistributionChamberElementType_type = 0;
entity* IFC4X2_IfcDistributionCircuit_type = 0;
entity* IFC4X2_IfcDistributionControlElement_type = 0;
entity* IFC4X2_IfcDistributionControlElementType_type = 0;
entity* IFC4X2_IfcDistributionElement_type = 0;
entity* IFC4X2_IfcDistributionElementType_type = 0;
entity* IFC4X2_IfcDistributionFlowElement_type = 0;
entity* IFC4X2_IfcDistributionFlowElementType_type = 0;
entity* IFC4X2_IfcDistributionPort_type = 0;
entity* IFC4X2_IfcDistributionSystem_type = 0;
entity* IFC4X2_IfcDocumentInformation_type = 0;
entity* IFC4X2_IfcDocumentInformationRelationship_type = 0;
entity* IFC4X2_IfcDocumentReference_type = 0;
entity* IFC4X2_IfcDoor_type = 0;
entity* IFC4X2_IfcDoorLiningProperties_type = 0;
entity* IFC4X2_IfcDoorPanelProperties_type = 0;
entity* IFC4X2_IfcDoorStandardCase_type = 0;
entity* IFC4X2_IfcDoorStyle_type = 0;
entity* IFC4X2_IfcDoorType_type = 0;
entity* IFC4X2_IfcDraughtingPreDefinedColour_type = 0;
entity* IFC4X2_IfcDraughtingPreDefinedCurveFont_type = 0;
entity* IFC4X2_IfcDuctFitting_type = 0;
entity* IFC4X2_IfcDuctFittingType_type = 0;
entity* IFC4X2_IfcDuctSegment_type = 0;
entity* IFC4X2_IfcDuctSegmentType_type = 0;
entity* IFC4X2_IfcDuctSilencer_type = 0;
entity* IFC4X2_IfcDuctSilencerType_type = 0;
entity* IFC4X2_IfcEdge_type = 0;
entity* IFC4X2_IfcEdgeCurve_type = 0;
entity* IFC4X2_IfcEdgeLoop_type = 0;
entity* IFC4X2_IfcElectricAppliance_type = 0;
entity* IFC4X2_IfcElectricApplianceType_type = 0;
entity* IFC4X2_IfcElectricDistributionBoard_type = 0;
entity* IFC4X2_IfcElectricDistributionBoardType_type = 0;
entity* IFC4X2_IfcElectricFlowStorageDevice_type = 0;
entity* IFC4X2_IfcElectricFlowStorageDeviceType_type = 0;
entity* IFC4X2_IfcElectricGenerator_type = 0;
entity* IFC4X2_IfcElectricGeneratorType_type = 0;
entity* IFC4X2_IfcElectricMotor_type = 0;
entity* IFC4X2_IfcElectricMotorType_type = 0;
entity* IFC4X2_IfcElectricTimeControl_type = 0;
entity* IFC4X2_IfcElectricTimeControlType_type = 0;
entity* IFC4X2_IfcElement_type = 0;
entity* IFC4X2_IfcElementAssembly_type = 0;
entity* IFC4X2_IfcElementAssemblyType_type = 0;
entity* IFC4X2_IfcElementComponent_type = 0;
entity* IFC4X2_IfcElementComponentType_type = 0;
entity* IFC4X2_IfcElementQuantity_type = 0;
entity* IFC4X2_IfcElementType_type = 0;
entity* IFC4X2_IfcElementarySurface_type = 0;
entity* IFC4X2_IfcEllipse_type = 0;
entity* IFC4X2_IfcEllipseProfileDef_type = 0;
entity* IFC4X2_IfcEnergyConversionDevice_type = 0;
entity* IFC4X2_IfcEnergyConversionDeviceType_type = 0;
entity* IFC4X2_IfcEngine_type = 0;
entity* IFC4X2_IfcEngineType_type = 0;
entity* IFC4X2_IfcEvaporativeCooler_type = 0;
entity* IFC4X2_IfcEvaporativeCoolerType_type = 0;
entity* IFC4X2_IfcEvaporator_type = 0;
entity* IFC4X2_IfcEvaporatorType_type = 0;
entity* IFC4X2_IfcEvent_type = 0;
entity* IFC4X2_IfcEventTime_type = 0;
entity* IFC4X2_IfcEventType_type = 0;
entity* IFC4X2_IfcExtendedProperties_type = 0;
entity* IFC4X2_IfcExternalInformation_type = 0;
entity* IFC4X2_IfcExternalReference_type = 0;
entity* IFC4X2_IfcExternalReferenceRelationship_type = 0;
entity* IFC4X2_IfcExternalSpatialElement_type = 0;
entity* IFC4X2_IfcExternalSpatialStructureElement_type = 0;
entity* IFC4X2_IfcExternallyDefinedHatchStyle_type = 0;
entity* IFC4X2_IfcExternallyDefinedSurfaceStyle_type = 0;
entity* IFC4X2_IfcExternallyDefinedTextFont_type = 0;
entity* IFC4X2_IfcExtrudedAreaSolid_type = 0;
entity* IFC4X2_IfcExtrudedAreaSolidTapered_type = 0;
entity* IFC4X2_IfcFace_type = 0;
entity* IFC4X2_IfcFaceBasedSurfaceModel_type = 0;
entity* IFC4X2_IfcFaceBound_type = 0;
entity* IFC4X2_IfcFaceOuterBound_type = 0;
entity* IFC4X2_IfcFaceSurface_type = 0;
entity* IFC4X2_IfcFacetedBrep_type = 0;
entity* IFC4X2_IfcFacetedBrepWithVoids_type = 0;
entity* IFC4X2_IfcFacility_type = 0;
entity* IFC4X2_IfcFacilityPart_type = 0;
entity* IFC4X2_IfcFailureConnectionCondition_type = 0;
entity* IFC4X2_IfcFan_type = 0;
entity* IFC4X2_IfcFanType_type = 0;
entity* IFC4X2_IfcFastener_type = 0;
entity* IFC4X2_IfcFastenerType_type = 0;
entity* IFC4X2_IfcFeatureElement_type = 0;
entity* IFC4X2_IfcFeatureElementAddition_type = 0;
entity* IFC4X2_IfcFeatureElementSubtraction_type = 0;
entity* IFC4X2_IfcFillAreaStyle_type = 0;
entity* IFC4X2_IfcFillAreaStyleHatching_type = 0;
entity* IFC4X2_IfcFillAreaStyleTiles_type = 0;
entity* IFC4X2_IfcFilter_type = 0;
entity* IFC4X2_IfcFilterType_type = 0;
entity* IFC4X2_IfcFireSuppressionTerminal_type = 0;
entity* IFC4X2_IfcFireSuppressionTerminalType_type = 0;
entity* IFC4X2_IfcFixedReferenceSweptAreaSolid_type = 0;
entity* IFC4X2_IfcFlowController_type = 0;
entity* IFC4X2_IfcFlowControllerType_type = 0;
entity* IFC4X2_IfcFlowFitting_type = 0;
entity* IFC4X2_IfcFlowFittingType_type = 0;
entity* IFC4X2_IfcFlowInstrument_type = 0;
entity* IFC4X2_IfcFlowInstrumentType_type = 0;
entity* IFC4X2_IfcFlowMeter_type = 0;
entity* IFC4X2_IfcFlowMeterType_type = 0;
entity* IFC4X2_IfcFlowMovingDevice_type = 0;
entity* IFC4X2_IfcFlowMovingDeviceType_type = 0;
entity* IFC4X2_IfcFlowSegment_type = 0;
entity* IFC4X2_IfcFlowSegmentType_type = 0;
entity* IFC4X2_IfcFlowStorageDevice_type = 0;
entity* IFC4X2_IfcFlowStorageDeviceType_type = 0;
entity* IFC4X2_IfcFlowTerminal_type = 0;
entity* IFC4X2_IfcFlowTerminalType_type = 0;
entity* IFC4X2_IfcFlowTreatmentDevice_type = 0;
entity* IFC4X2_IfcFlowTreatmentDeviceType_type = 0;
entity* IFC4X2_IfcFooting_type = 0;
entity* IFC4X2_IfcFootingType_type = 0;
entity* IFC4X2_IfcFurnishingElement_type = 0;
entity* IFC4X2_IfcFurnishingElementType_type = 0;
entity* IFC4X2_IfcFurniture_type = 0;
entity* IFC4X2_IfcFurnitureType_type = 0;
entity* IFC4X2_IfcGeographicElement_type = 0;
entity* IFC4X2_IfcGeographicElementType_type = 0;
entity* IFC4X2_IfcGeometricCurveSet_type = 0;
entity* IFC4X2_IfcGeometricRepresentationContext_type = 0;
entity* IFC4X2_IfcGeometricRepresentationItem_type = 0;
entity* IFC4X2_IfcGeometricRepresentationSubContext_type = 0;
entity* IFC4X2_IfcGeometricSet_type = 0;
entity* IFC4X2_IfcGrid_type = 0;
entity* IFC4X2_IfcGridAxis_type = 0;
entity* IFC4X2_IfcGridPlacement_type = 0;
entity* IFC4X2_IfcGroup_type = 0;
entity* IFC4X2_IfcHalfSpaceSolid_type = 0;
entity* IFC4X2_IfcHeatExchanger_type = 0;
entity* IFC4X2_IfcHeatExchangerType_type = 0;
entity* IFC4X2_IfcHumidifier_type = 0;
entity* IFC4X2_IfcHumidifierType_type = 0;
entity* IFC4X2_IfcIShapeProfileDef_type = 0;
entity* IFC4X2_IfcImageTexture_type = 0;
entity* IFC4X2_IfcIndexedColourMap_type = 0;
entity* IFC4X2_IfcIndexedPolyCurve_type = 0;
entity* IFC4X2_IfcIndexedPolygonalFace_type = 0;
entity* IFC4X2_IfcIndexedPolygonalFaceWithVoids_type = 0;
entity* IFC4X2_IfcIndexedTextureMap_type = 0;
entity* IFC4X2_IfcIndexedTriangleTextureMap_type = 0;
entity* IFC4X2_IfcInterceptor_type = 0;
entity* IFC4X2_IfcInterceptorType_type = 0;
entity* IFC4X2_IfcIntersectionCurve_type = 0;
entity* IFC4X2_IfcInventory_type = 0;
entity* IFC4X2_IfcIrregularTimeSeries_type = 0;
entity* IFC4X2_IfcIrregularTimeSeriesValue_type = 0;
entity* IFC4X2_IfcJunctionBox_type = 0;
entity* IFC4X2_IfcJunctionBoxType_type = 0;
entity* IFC4X2_IfcLShapeProfileDef_type = 0;
entity* IFC4X2_IfcLaborResource_type = 0;
entity* IFC4X2_IfcLaborResourceType_type = 0;
entity* IFC4X2_IfcLagTime_type = 0;
entity* IFC4X2_IfcLamp_type = 0;
entity* IFC4X2_IfcLampType_type = 0;
entity* IFC4X2_IfcLibraryInformation_type = 0;
entity* IFC4X2_IfcLibraryReference_type = 0;
entity* IFC4X2_IfcLightDistributionData_type = 0;
entity* IFC4X2_IfcLightFixture_type = 0;
entity* IFC4X2_IfcLightFixtureType_type = 0;
entity* IFC4X2_IfcLightIntensityDistribution_type = 0;
entity* IFC4X2_IfcLightSource_type = 0;
entity* IFC4X2_IfcLightSourceAmbient_type = 0;
entity* IFC4X2_IfcLightSourceDirectional_type = 0;
entity* IFC4X2_IfcLightSourceGoniometric_type = 0;
entity* IFC4X2_IfcLightSourcePositional_type = 0;
entity* IFC4X2_IfcLightSourceSpot_type = 0;
entity* IFC4X2_IfcLine_type = 0;
entity* IFC4X2_IfcLineSegment2D_type = 0;
entity* IFC4X2_IfcLinearPlacement_type = 0;
entity* IFC4X2_IfcLinearPositioningElement_type = 0;
entity* IFC4X2_IfcLocalPlacement_type = 0;
entity* IFC4X2_IfcLoop_type = 0;
entity* IFC4X2_IfcManifoldSolidBrep_type = 0;
entity* IFC4X2_IfcMapConversion_type = 0;
entity* IFC4X2_IfcMappedItem_type = 0;
entity* IFC4X2_IfcMaterial_type = 0;
entity* IFC4X2_IfcMaterialClassificationRelationship_type = 0;
entity* IFC4X2_IfcMaterialConstituent_type = 0;
entity* IFC4X2_IfcMaterialConstituentSet_type = 0;
entity* IFC4X2_IfcMaterialDefinition_type = 0;
entity* IFC4X2_IfcMaterialDefinitionRepresentation_type = 0;
entity* IFC4X2_IfcMaterialLayer_type = 0;
entity* IFC4X2_IfcMaterialLayerSet_type = 0;
entity* IFC4X2_IfcMaterialLayerSetUsage_type = 0;
entity* IFC4X2_IfcMaterialLayerWithOffsets_type = 0;
entity* IFC4X2_IfcMaterialList_type = 0;
entity* IFC4X2_IfcMaterialProfile_type = 0;
entity* IFC4X2_IfcMaterialProfileSet_type = 0;
entity* IFC4X2_IfcMaterialProfileSetUsage_type = 0;
entity* IFC4X2_IfcMaterialProfileSetUsageTapering_type = 0;
entity* IFC4X2_IfcMaterialProfileWithOffsets_type = 0;
entity* IFC4X2_IfcMaterialProperties_type = 0;
entity* IFC4X2_IfcMaterialRelationship_type = 0;
entity* IFC4X2_IfcMaterialUsageDefinition_type = 0;
entity* IFC4X2_IfcMeasureWithUnit_type = 0;
entity* IFC4X2_IfcMechanicalFastener_type = 0;
entity* IFC4X2_IfcMechanicalFastenerType_type = 0;
entity* IFC4X2_IfcMedicalDevice_type = 0;
entity* IFC4X2_IfcMedicalDeviceType_type = 0;
entity* IFC4X2_IfcMember_type = 0;
entity* IFC4X2_IfcMemberStandardCase_type = 0;
entity* IFC4X2_IfcMemberType_type = 0;
entity* IFC4X2_IfcMetric_type = 0;
entity* IFC4X2_IfcMirroredProfileDef_type = 0;
entity* IFC4X2_IfcMonetaryUnit_type = 0;
entity* IFC4X2_IfcMotorConnection_type = 0;
entity* IFC4X2_IfcMotorConnectionType_type = 0;
entity* IFC4X2_IfcNamedUnit_type = 0;
entity* IFC4X2_IfcObject_type = 0;
entity* IFC4X2_IfcObjectDefinition_type = 0;
entity* IFC4X2_IfcObjectPlacement_type = 0;
entity* IFC4X2_IfcObjective_type = 0;
entity* IFC4X2_IfcOccupant_type = 0;
entity* IFC4X2_IfcOffsetCurve_type = 0;
entity* IFC4X2_IfcOffsetCurve2D_type = 0;
entity* IFC4X2_IfcOffsetCurve3D_type = 0;
entity* IFC4X2_IfcOffsetCurveByDistances_type = 0;
entity* IFC4X2_IfcOpenShell_type = 0;
entity* IFC4X2_IfcOpeningElement_type = 0;
entity* IFC4X2_IfcOpeningStandardCase_type = 0;
entity* IFC4X2_IfcOrganization_type = 0;
entity* IFC4X2_IfcOrganizationRelationship_type = 0;
entity* IFC4X2_IfcOrientationExpression_type = 0;
entity* IFC4X2_IfcOrientedEdge_type = 0;
entity* IFC4X2_IfcOuterBoundaryCurve_type = 0;
entity* IFC4X2_IfcOutlet_type = 0;
entity* IFC4X2_IfcOutletType_type = 0;
entity* IFC4X2_IfcOwnerHistory_type = 0;
entity* IFC4X2_IfcParameterizedProfileDef_type = 0;
entity* IFC4X2_IfcPath_type = 0;
entity* IFC4X2_IfcPcurve_type = 0;
entity* IFC4X2_IfcPerformanceHistory_type = 0;
entity* IFC4X2_IfcPermeableCoveringProperties_type = 0;
entity* IFC4X2_IfcPermit_type = 0;
entity* IFC4X2_IfcPerson_type = 0;
entity* IFC4X2_IfcPersonAndOrganization_type = 0;
entity* IFC4X2_IfcPhysicalComplexQuantity_type = 0;
entity* IFC4X2_IfcPhysicalQuantity_type = 0;
entity* IFC4X2_IfcPhysicalSimpleQuantity_type = 0;
entity* IFC4X2_IfcPile_type = 0;
entity* IFC4X2_IfcPileType_type = 0;
entity* IFC4X2_IfcPipeFitting_type = 0;
entity* IFC4X2_IfcPipeFittingType_type = 0;
entity* IFC4X2_IfcPipeSegment_type = 0;
entity* IFC4X2_IfcPipeSegmentType_type = 0;
entity* IFC4X2_IfcPixelTexture_type = 0;
entity* IFC4X2_IfcPlacement_type = 0;
entity* IFC4X2_IfcPlanarBox_type = 0;
entity* IFC4X2_IfcPlanarExtent_type = 0;
entity* IFC4X2_IfcPlane_type = 0;
entity* IFC4X2_IfcPlate_type = 0;
entity* IFC4X2_IfcPlateStandardCase_type = 0;
entity* IFC4X2_IfcPlateType_type = 0;
entity* IFC4X2_IfcPoint_type = 0;
entity* IFC4X2_IfcPointOnCurve_type = 0;
entity* IFC4X2_IfcPointOnSurface_type = 0;
entity* IFC4X2_IfcPolyLoop_type = 0;
entity* IFC4X2_IfcPolygonalBoundedHalfSpace_type = 0;
entity* IFC4X2_IfcPolygonalFaceSet_type = 0;
entity* IFC4X2_IfcPolyline_type = 0;
entity* IFC4X2_IfcPort_type = 0;
entity* IFC4X2_IfcPositioningElement_type = 0;
entity* IFC4X2_IfcPostalAddress_type = 0;
entity* IFC4X2_IfcPreDefinedColour_type = 0;
entity* IFC4X2_IfcPreDefinedCurveFont_type = 0;
entity* IFC4X2_IfcPreDefinedItem_type = 0;
entity* IFC4X2_IfcPreDefinedProperties_type = 0;
entity* IFC4X2_IfcPreDefinedPropertySet_type = 0;
entity* IFC4X2_IfcPreDefinedTextFont_type = 0;
entity* IFC4X2_IfcPresentationItem_type = 0;
entity* IFC4X2_IfcPresentationLayerAssignment_type = 0;
entity* IFC4X2_IfcPresentationLayerWithStyle_type = 0;
entity* IFC4X2_IfcPresentationStyle_type = 0;
entity* IFC4X2_IfcPresentationStyleAssignment_type = 0;
entity* IFC4X2_IfcProcedure_type = 0;
entity* IFC4X2_IfcProcedureType_type = 0;
entity* IFC4X2_IfcProcess_type = 0;
entity* IFC4X2_IfcProduct_type = 0;
entity* IFC4X2_IfcProductDefinitionShape_type = 0;
entity* IFC4X2_IfcProductRepresentation_type = 0;
entity* IFC4X2_IfcProfileDef_type = 0;
entity* IFC4X2_IfcProfileProperties_type = 0;
entity* IFC4X2_IfcProject_type = 0;
entity* IFC4X2_IfcProjectLibrary_type = 0;
entity* IFC4X2_IfcProjectOrder_type = 0;
entity* IFC4X2_IfcProjectedCRS_type = 0;
entity* IFC4X2_IfcProjectionElement_type = 0;
entity* IFC4X2_IfcProperty_type = 0;
entity* IFC4X2_IfcPropertyAbstraction_type = 0;
entity* IFC4X2_IfcPropertyBoundedValue_type = 0;
entity* IFC4X2_IfcPropertyDefinition_type = 0;
entity* IFC4X2_IfcPropertyDependencyRelationship_type = 0;
entity* IFC4X2_IfcPropertyEnumeratedValue_type = 0;
entity* IFC4X2_IfcPropertyEnumeration_type = 0;
entity* IFC4X2_IfcPropertyListValue_type = 0;
entity* IFC4X2_IfcPropertyReferenceValue_type = 0;
entity* IFC4X2_IfcPropertySet_type = 0;
entity* IFC4X2_IfcPropertySetDefinition_type = 0;
entity* IFC4X2_IfcPropertySetTemplate_type = 0;
entity* IFC4X2_IfcPropertySingleValue_type = 0;
entity* IFC4X2_IfcPropertyTableValue_type = 0;
entity* IFC4X2_IfcPropertyTemplate_type = 0;
entity* IFC4X2_IfcPropertyTemplateDefinition_type = 0;
entity* IFC4X2_IfcProtectiveDevice_type = 0;
entity* IFC4X2_IfcProtectiveDeviceTrippingUnit_type = 0;
entity* IFC4X2_IfcProtectiveDeviceTrippingUnitType_type = 0;
entity* IFC4X2_IfcProtectiveDeviceType_type = 0;
entity* IFC4X2_IfcProxy_type = 0;
entity* IFC4X2_IfcPump_type = 0;
entity* IFC4X2_IfcPumpType_type = 0;
entity* IFC4X2_IfcQuantityArea_type = 0;
entity* IFC4X2_IfcQuantityCount_type = 0;
entity* IFC4X2_IfcQuantityLength_type = 0;
entity* IFC4X2_IfcQuantitySet_type = 0;
entity* IFC4X2_IfcQuantityTime_type = 0;
entity* IFC4X2_IfcQuantityVolume_type = 0;
entity* IFC4X2_IfcQuantityWeight_type = 0;
entity* IFC4X2_IfcRailing_type = 0;
entity* IFC4X2_IfcRailingType_type = 0;
entity* IFC4X2_IfcRamp_type = 0;
entity* IFC4X2_IfcRampFlight_type = 0;
entity* IFC4X2_IfcRampFlightType_type = 0;
entity* IFC4X2_IfcRampType_type = 0;
entity* IFC4X2_IfcRationalBSplineCurveWithKnots_type = 0;
entity* IFC4X2_IfcRationalBSplineSurfaceWithKnots_type = 0;
entity* IFC4X2_IfcRectangleHollowProfileDef_type = 0;
entity* IFC4X2_IfcRectangleProfileDef_type = 0;
entity* IFC4X2_IfcRectangularPyramid_type = 0;
entity* IFC4X2_IfcRectangularTrimmedSurface_type = 0;
entity* IFC4X2_IfcRecurrencePattern_type = 0;
entity* IFC4X2_IfcReference_type = 0;
entity* IFC4X2_IfcReferent_type = 0;
entity* IFC4X2_IfcRegularTimeSeries_type = 0;
entity* IFC4X2_IfcReinforcementBarProperties_type = 0;
entity* IFC4X2_IfcReinforcementDefinitionProperties_type = 0;
entity* IFC4X2_IfcReinforcingBar_type = 0;
entity* IFC4X2_IfcReinforcingBarType_type = 0;
entity* IFC4X2_IfcReinforcingElement_type = 0;
entity* IFC4X2_IfcReinforcingElementType_type = 0;
entity* IFC4X2_IfcReinforcingMesh_type = 0;
entity* IFC4X2_IfcReinforcingMeshType_type = 0;
entity* IFC4X2_IfcRelAggregates_type = 0;
entity* IFC4X2_IfcRelAssigns_type = 0;
entity* IFC4X2_IfcRelAssignsToActor_type = 0;
entity* IFC4X2_IfcRelAssignsToControl_type = 0;
entity* IFC4X2_IfcRelAssignsToGroup_type = 0;
entity* IFC4X2_IfcRelAssignsToGroupByFactor_type = 0;
entity* IFC4X2_IfcRelAssignsToProcess_type = 0;
entity* IFC4X2_IfcRelAssignsToProduct_type = 0;
entity* IFC4X2_IfcRelAssignsToResource_type = 0;
entity* IFC4X2_IfcRelAssociates_type = 0;
entity* IFC4X2_IfcRelAssociatesApproval_type = 0;
entity* IFC4X2_IfcRelAssociatesClassification_type = 0;
entity* IFC4X2_IfcRelAssociatesConstraint_type = 0;
entity* IFC4X2_IfcRelAssociatesDocument_type = 0;
entity* IFC4X2_IfcRelAssociatesLibrary_type = 0;
entity* IFC4X2_IfcRelAssociatesMaterial_type = 0;
entity* IFC4X2_IfcRelConnects_type = 0;
entity* IFC4X2_IfcRelConnectsElements_type = 0;
entity* IFC4X2_IfcRelConnectsPathElements_type = 0;
entity* IFC4X2_IfcRelConnectsPortToElement_type = 0;
entity* IFC4X2_IfcRelConnectsPorts_type = 0;
entity* IFC4X2_IfcRelConnectsStructuralActivity_type = 0;
entity* IFC4X2_IfcRelConnectsStructuralMember_type = 0;
entity* IFC4X2_IfcRelConnectsWithEccentricity_type = 0;
entity* IFC4X2_IfcRelConnectsWithRealizingElements_type = 0;
entity* IFC4X2_IfcRelContainedInSpatialStructure_type = 0;
entity* IFC4X2_IfcRelCoversBldgElements_type = 0;
entity* IFC4X2_IfcRelCoversSpaces_type = 0;
entity* IFC4X2_IfcRelDeclares_type = 0;
entity* IFC4X2_IfcRelDecomposes_type = 0;
entity* IFC4X2_IfcRelDefines_type = 0;
entity* IFC4X2_IfcRelDefinesByObject_type = 0;
entity* IFC4X2_IfcRelDefinesByProperties_type = 0;
entity* IFC4X2_IfcRelDefinesByTemplate_type = 0;
entity* IFC4X2_IfcRelDefinesByType_type = 0;
entity* IFC4X2_IfcRelFillsElement_type = 0;
entity* IFC4X2_IfcRelFlowControlElements_type = 0;
entity* IFC4X2_IfcRelInterferesElements_type = 0;
entity* IFC4X2_IfcRelNests_type = 0;
entity* IFC4X2_IfcRelPositions_type = 0;
entity* IFC4X2_IfcRelProjectsElement_type = 0;
entity* IFC4X2_IfcRelReferencedInSpatialStructure_type = 0;
entity* IFC4X2_IfcRelSequence_type = 0;
entity* IFC4X2_IfcRelServicesBuildings_type = 0;
entity* IFC4X2_IfcRelSpaceBoundary_type = 0;
entity* IFC4X2_IfcRelSpaceBoundary1stLevel_type = 0;
entity* IFC4X2_IfcRelSpaceBoundary2ndLevel_type = 0;
entity* IFC4X2_IfcRelVoidsElement_type = 0;
entity* IFC4X2_IfcRelationship_type = 0;
entity* IFC4X2_IfcReparametrisedCompositeCurveSegment_type = 0;
entity* IFC4X2_IfcRepresentation_type = 0;
entity* IFC4X2_IfcRepresentationContext_type = 0;
entity* IFC4X2_IfcRepresentationItem_type = 0;
entity* IFC4X2_IfcRepresentationMap_type = 0;
entity* IFC4X2_IfcResource_type = 0;
entity* IFC4X2_IfcResourceApprovalRelationship_type = 0;
entity* IFC4X2_IfcResourceConstraintRelationship_type = 0;
entity* IFC4X2_IfcResourceLevelRelationship_type = 0;
entity* IFC4X2_IfcResourceTime_type = 0;
entity* IFC4X2_IfcRevolvedAreaSolid_type = 0;
entity* IFC4X2_IfcRevolvedAreaSolidTapered_type = 0;
entity* IFC4X2_IfcRightCircularCone_type = 0;
entity* IFC4X2_IfcRightCircularCylinder_type = 0;
entity* IFC4X2_IfcRoof_type = 0;
entity* IFC4X2_IfcRoofType_type = 0;
entity* IFC4X2_IfcRoot_type = 0;
entity* IFC4X2_IfcRoundedRectangleProfileDef_type = 0;
entity* IFC4X2_IfcSIUnit_type = 0;
entity* IFC4X2_IfcSanitaryTerminal_type = 0;
entity* IFC4X2_IfcSanitaryTerminalType_type = 0;
entity* IFC4X2_IfcSchedulingTime_type = 0;
entity* IFC4X2_IfcSeamCurve_type = 0;
entity* IFC4X2_IfcSectionProperties_type = 0;
entity* IFC4X2_IfcSectionReinforcementProperties_type = 0;
entity* IFC4X2_IfcSectionedSolid_type = 0;
entity* IFC4X2_IfcSectionedSolidHorizontal_type = 0;
entity* IFC4X2_IfcSectionedSpine_type = 0;
entity* IFC4X2_IfcSensor_type = 0;
entity* IFC4X2_IfcSensorType_type = 0;
entity* IFC4X2_IfcShadingDevice_type = 0;
entity* IFC4X2_IfcShadingDeviceType_type = 0;
entity* IFC4X2_IfcShapeAspect_type = 0;
entity* IFC4X2_IfcShapeModel_type = 0;
entity* IFC4X2_IfcShapeRepresentation_type = 0;
entity* IFC4X2_IfcShellBasedSurfaceModel_type = 0;
entity* IFC4X2_IfcSimpleProperty_type = 0;
entity* IFC4X2_IfcSimplePropertyTemplate_type = 0;
entity* IFC4X2_IfcSite_type = 0;
entity* IFC4X2_IfcSlab_type = 0;
entity* IFC4X2_IfcSlabElementedCase_type = 0;
entity* IFC4X2_IfcSlabStandardCase_type = 0;
entity* IFC4X2_IfcSlabType_type = 0;
entity* IFC4X2_IfcSlippageConnectionCondition_type = 0;
entity* IFC4X2_IfcSolarDevice_type = 0;
entity* IFC4X2_IfcSolarDeviceType_type = 0;
entity* IFC4X2_IfcSolidModel_type = 0;
entity* IFC4X2_IfcSpace_type = 0;
entity* IFC4X2_IfcSpaceHeater_type = 0;
entity* IFC4X2_IfcSpaceHeaterType_type = 0;
entity* IFC4X2_IfcSpaceType_type = 0;
entity* IFC4X2_IfcSpatialElement_type = 0;
entity* IFC4X2_IfcSpatialElementType_type = 0;
entity* IFC4X2_IfcSpatialStructureElement_type = 0;
entity* IFC4X2_IfcSpatialStructureElementType_type = 0;
entity* IFC4X2_IfcSpatialZone_type = 0;
entity* IFC4X2_IfcSpatialZoneType_type = 0;
entity* IFC4X2_IfcSphere_type = 0;
entity* IFC4X2_IfcSphericalSurface_type = 0;
entity* IFC4X2_IfcStackTerminal_type = 0;
entity* IFC4X2_IfcStackTerminalType_type = 0;
entity* IFC4X2_IfcStair_type = 0;
entity* IFC4X2_IfcStairFlight_type = 0;
entity* IFC4X2_IfcStairFlightType_type = 0;
entity* IFC4X2_IfcStairType_type = 0;
entity* IFC4X2_IfcStructuralAction_type = 0;
entity* IFC4X2_IfcStructuralActivity_type = 0;
entity* IFC4X2_IfcStructuralAnalysisModel_type = 0;
entity* IFC4X2_IfcStructuralConnection_type = 0;
entity* IFC4X2_IfcStructuralConnectionCondition_type = 0;
entity* IFC4X2_IfcStructuralCurveAction_type = 0;
entity* IFC4X2_IfcStructuralCurveConnection_type = 0;
entity* IFC4X2_IfcStructuralCurveMember_type = 0;
entity* IFC4X2_IfcStructuralCurveMemberVarying_type = 0;
entity* IFC4X2_IfcStructuralCurveReaction_type = 0;
entity* IFC4X2_IfcStructuralItem_type = 0;
entity* IFC4X2_IfcStructuralLinearAction_type = 0;
entity* IFC4X2_IfcStructuralLoad_type = 0;
entity* IFC4X2_IfcStructuralLoadCase_type = 0;
entity* IFC4X2_IfcStructuralLoadConfiguration_type = 0;
entity* IFC4X2_IfcStructuralLoadGroup_type = 0;
entity* IFC4X2_IfcStructuralLoadLinearForce_type = 0;
entity* IFC4X2_IfcStructuralLoadOrResult_type = 0;
entity* IFC4X2_IfcStructuralLoadPlanarForce_type = 0;
entity* IFC4X2_IfcStructuralLoadSingleDisplacement_type = 0;
entity* IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type = 0;
entity* IFC4X2_IfcStructuralLoadSingleForce_type = 0;
entity* IFC4X2_IfcStructuralLoadSingleForceWarping_type = 0;
entity* IFC4X2_IfcStructuralLoadStatic_type = 0;
entity* IFC4X2_IfcStructuralLoadTemperature_type = 0;
entity* IFC4X2_IfcStructuralMember_type = 0;
entity* IFC4X2_IfcStructuralPlanarAction_type = 0;
entity* IFC4X2_IfcStructuralPointAction_type = 0;
entity* IFC4X2_IfcStructuralPointConnection_type = 0;
entity* IFC4X2_IfcStructuralPointReaction_type = 0;
entity* IFC4X2_IfcStructuralReaction_type = 0;
entity* IFC4X2_IfcStructuralResultGroup_type = 0;
entity* IFC4X2_IfcStructuralSurfaceAction_type = 0;
entity* IFC4X2_IfcStructuralSurfaceConnection_type = 0;
entity* IFC4X2_IfcStructuralSurfaceMember_type = 0;
entity* IFC4X2_IfcStructuralSurfaceMemberVarying_type = 0;
entity* IFC4X2_IfcStructuralSurfaceReaction_type = 0;
entity* IFC4X2_IfcStyleModel_type = 0;
entity* IFC4X2_IfcStyledItem_type = 0;
entity* IFC4X2_IfcStyledRepresentation_type = 0;
entity* IFC4X2_IfcSubContractResource_type = 0;
entity* IFC4X2_IfcSubContractResourceType_type = 0;
entity* IFC4X2_IfcSubedge_type = 0;
entity* IFC4X2_IfcSurface_type = 0;
entity* IFC4X2_IfcSurfaceCurve_type = 0;
entity* IFC4X2_IfcSurfaceCurveSweptAreaSolid_type = 0;
entity* IFC4X2_IfcSurfaceFeature_type = 0;
entity* IFC4X2_IfcSurfaceOfLinearExtrusion_type = 0;
entity* IFC4X2_IfcSurfaceOfRevolution_type = 0;
entity* IFC4X2_IfcSurfaceReinforcementArea_type = 0;
entity* IFC4X2_IfcSurfaceStyle_type = 0;
entity* IFC4X2_IfcSurfaceStyleLighting_type = 0;
entity* IFC4X2_IfcSurfaceStyleRefraction_type = 0;
entity* IFC4X2_IfcSurfaceStyleRendering_type = 0;
entity* IFC4X2_IfcSurfaceStyleShading_type = 0;
entity* IFC4X2_IfcSurfaceStyleWithTextures_type = 0;
entity* IFC4X2_IfcSurfaceTexture_type = 0;
entity* IFC4X2_IfcSweptAreaSolid_type = 0;
entity* IFC4X2_IfcSweptDiskSolid_type = 0;
entity* IFC4X2_IfcSweptDiskSolidPolygonal_type = 0;
entity* IFC4X2_IfcSweptSurface_type = 0;
entity* IFC4X2_IfcSwitchingDevice_type = 0;
entity* IFC4X2_IfcSwitchingDeviceType_type = 0;
entity* IFC4X2_IfcSystem_type = 0;
entity* IFC4X2_IfcSystemFurnitureElement_type = 0;
entity* IFC4X2_IfcSystemFurnitureElementType_type = 0;
entity* IFC4X2_IfcTShapeProfileDef_type = 0;
entity* IFC4X2_IfcTable_type = 0;
entity* IFC4X2_IfcTableColumn_type = 0;
entity* IFC4X2_IfcTableRow_type = 0;
entity* IFC4X2_IfcTank_type = 0;
entity* IFC4X2_IfcTankType_type = 0;
entity* IFC4X2_IfcTask_type = 0;
entity* IFC4X2_IfcTaskTime_type = 0;
entity* IFC4X2_IfcTaskTimeRecurring_type = 0;
entity* IFC4X2_IfcTaskType_type = 0;
entity* IFC4X2_IfcTelecomAddress_type = 0;
entity* IFC4X2_IfcTendon_type = 0;
entity* IFC4X2_IfcTendonAnchor_type = 0;
entity* IFC4X2_IfcTendonAnchorType_type = 0;
entity* IFC4X2_IfcTendonConduit_type = 0;
entity* IFC4X2_IfcTendonConduitType_type = 0;
entity* IFC4X2_IfcTendonType_type = 0;
entity* IFC4X2_IfcTessellatedFaceSet_type = 0;
entity* IFC4X2_IfcTessellatedItem_type = 0;
entity* IFC4X2_IfcTextLiteral_type = 0;
entity* IFC4X2_IfcTextLiteralWithExtent_type = 0;
entity* IFC4X2_IfcTextStyle_type = 0;
entity* IFC4X2_IfcTextStyleFontModel_type = 0;
entity* IFC4X2_IfcTextStyleForDefinedFont_type = 0;
entity* IFC4X2_IfcTextStyleTextModel_type = 0;
entity* IFC4X2_IfcTextureCoordinate_type = 0;
entity* IFC4X2_IfcTextureCoordinateGenerator_type = 0;
entity* IFC4X2_IfcTextureMap_type = 0;
entity* IFC4X2_IfcTextureVertex_type = 0;
entity* IFC4X2_IfcTextureVertexList_type = 0;
entity* IFC4X2_IfcTimePeriod_type = 0;
entity* IFC4X2_IfcTimeSeries_type = 0;
entity* IFC4X2_IfcTimeSeriesValue_type = 0;
entity* IFC4X2_IfcTopologicalRepresentationItem_type = 0;
entity* IFC4X2_IfcTopologyRepresentation_type = 0;
entity* IFC4X2_IfcToroidalSurface_type = 0;
entity* IFC4X2_IfcTransformer_type = 0;
entity* IFC4X2_IfcTransformerType_type = 0;
entity* IFC4X2_IfcTransitionCurveSegment2D_type = 0;
entity* IFC4X2_IfcTransportElement_type = 0;
entity* IFC4X2_IfcTransportElementType_type = 0;
entity* IFC4X2_IfcTrapeziumProfileDef_type = 0;
entity* IFC4X2_IfcTriangulatedFaceSet_type = 0;
entity* IFC4X2_IfcTriangulatedIrregularNetwork_type = 0;
entity* IFC4X2_IfcTrimmedCurve_type = 0;
entity* IFC4X2_IfcTubeBundle_type = 0;
entity* IFC4X2_IfcTubeBundleType_type = 0;
entity* IFC4X2_IfcTypeObject_type = 0;
entity* IFC4X2_IfcTypeProcess_type = 0;
entity* IFC4X2_IfcTypeProduct_type = 0;
entity* IFC4X2_IfcTypeResource_type = 0;
entity* IFC4X2_IfcUShapeProfileDef_type = 0;
entity* IFC4X2_IfcUnitAssignment_type = 0;
entity* IFC4X2_IfcUnitaryControlElement_type = 0;
entity* IFC4X2_IfcUnitaryControlElementType_type = 0;
entity* IFC4X2_IfcUnitaryEquipment_type = 0;
entity* IFC4X2_IfcUnitaryEquipmentType_type = 0;
entity* IFC4X2_IfcValve_type = 0;
entity* IFC4X2_IfcValveType_type = 0;
entity* IFC4X2_IfcVector_type = 0;
entity* IFC4X2_IfcVertex_type = 0;
entity* IFC4X2_IfcVertexLoop_type = 0;
entity* IFC4X2_IfcVertexPoint_type = 0;
entity* IFC4X2_IfcVibrationDamper_type = 0;
entity* IFC4X2_IfcVibrationDamperType_type = 0;
entity* IFC4X2_IfcVibrationIsolator_type = 0;
entity* IFC4X2_IfcVibrationIsolatorType_type = 0;
entity* IFC4X2_IfcVirtualElement_type = 0;
entity* IFC4X2_IfcVirtualGridIntersection_type = 0;
entity* IFC4X2_IfcVoidingFeature_type = 0;
entity* IFC4X2_IfcWall_type = 0;
entity* IFC4X2_IfcWallElementedCase_type = 0;
entity* IFC4X2_IfcWallStandardCase_type = 0;
entity* IFC4X2_IfcWallType_type = 0;
entity* IFC4X2_IfcWasteTerminal_type = 0;
entity* IFC4X2_IfcWasteTerminalType_type = 0;
entity* IFC4X2_IfcWindow_type = 0;
entity* IFC4X2_IfcWindowLiningProperties_type = 0;
entity* IFC4X2_IfcWindowPanelProperties_type = 0;
entity* IFC4X2_IfcWindowStandardCase_type = 0;
entity* IFC4X2_IfcWindowStyle_type = 0;
entity* IFC4X2_IfcWindowType_type = 0;
entity* IFC4X2_IfcWorkCalendar_type = 0;
entity* IFC4X2_IfcWorkControl_type = 0;
entity* IFC4X2_IfcWorkPlan_type = 0;
entity* IFC4X2_IfcWorkSchedule_type = 0;
entity* IFC4X2_IfcWorkTime_type = 0;
entity* IFC4X2_IfcZShapeProfileDef_type = 0;
entity* IFC4X2_IfcZone_type = 0;
type_declaration* IFC4X2_IfcAbsorbedDoseMeasure_type = 0;
type_declaration* IFC4X2_IfcAccelerationMeasure_type = 0;
type_declaration* IFC4X2_IfcAmountOfSubstanceMeasure_type = 0;
type_declaration* IFC4X2_IfcAngularVelocityMeasure_type = 0;
type_declaration* IFC4X2_IfcArcIndex_type = 0;
type_declaration* IFC4X2_IfcAreaDensityMeasure_type = 0;
type_declaration* IFC4X2_IfcAreaMeasure_type = 0;
type_declaration* IFC4X2_IfcBinary_type = 0;
type_declaration* IFC4X2_IfcBoolean_type = 0;
type_declaration* IFC4X2_IfcBoxAlignment_type = 0;
type_declaration* IFC4X2_IfcCardinalPointReference_type = 0;
type_declaration* IFC4X2_IfcComplexNumber_type = 0;
type_declaration* IFC4X2_IfcCompoundPlaneAngleMeasure_type = 0;
type_declaration* IFC4X2_IfcContextDependentMeasure_type = 0;
type_declaration* IFC4X2_IfcCountMeasure_type = 0;
type_declaration* IFC4X2_IfcCurvatureMeasure_type = 0;
type_declaration* IFC4X2_IfcDate_type = 0;
type_declaration* IFC4X2_IfcDateTime_type = 0;
type_declaration* IFC4X2_IfcDayInMonthNumber_type = 0;
type_declaration* IFC4X2_IfcDayInWeekNumber_type = 0;
type_declaration* IFC4X2_IfcDescriptiveMeasure_type = 0;
type_declaration* IFC4X2_IfcDimensionCount_type = 0;
type_declaration* IFC4X2_IfcDoseEquivalentMeasure_type = 0;
type_declaration* IFC4X2_IfcDuration_type = 0;
type_declaration* IFC4X2_IfcDynamicViscosityMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricCapacitanceMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricChargeMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricConductanceMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricCurrentMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricResistanceMeasure_type = 0;
type_declaration* IFC4X2_IfcElectricVoltageMeasure_type = 0;
type_declaration* IFC4X2_IfcEnergyMeasure_type = 0;
type_declaration* IFC4X2_IfcFontStyle_type = 0;
type_declaration* IFC4X2_IfcFontVariant_type = 0;
type_declaration* IFC4X2_IfcFontWeight_type = 0;
type_declaration* IFC4X2_IfcForceMeasure_type = 0;
type_declaration* IFC4X2_IfcFrequencyMeasure_type = 0;
type_declaration* IFC4X2_IfcGloballyUniqueId_type = 0;
type_declaration* IFC4X2_IfcHeatFluxDensityMeasure_type = 0;
type_declaration* IFC4X2_IfcHeatingValueMeasure_type = 0;
type_declaration* IFC4X2_IfcIdentifier_type = 0;
type_declaration* IFC4X2_IfcIlluminanceMeasure_type = 0;
type_declaration* IFC4X2_IfcInductanceMeasure_type = 0;
type_declaration* IFC4X2_IfcInteger_type = 0;
type_declaration* IFC4X2_IfcIntegerCountRateMeasure_type = 0;
type_declaration* IFC4X2_IfcIonConcentrationMeasure_type = 0;
type_declaration* IFC4X2_IfcIsothermalMoistureCapacityMeasure_type = 0;
type_declaration* IFC4X2_IfcKinematicViscosityMeasure_type = 0;
type_declaration* IFC4X2_IfcLabel_type = 0;
type_declaration* IFC4X2_IfcLanguageId_type = 0;
type_declaration* IFC4X2_IfcLengthMeasure_type = 0;
type_declaration* IFC4X2_IfcLineIndex_type = 0;
type_declaration* IFC4X2_IfcLinearForceMeasure_type = 0;
type_declaration* IFC4X2_IfcLinearMomentMeasure_type = 0;
type_declaration* IFC4X2_IfcLinearStiffnessMeasure_type = 0;
type_declaration* IFC4X2_IfcLinearVelocityMeasure_type = 0;
type_declaration* IFC4X2_IfcLogical_type = 0;
type_declaration* IFC4X2_IfcLuminousFluxMeasure_type = 0;
type_declaration* IFC4X2_IfcLuminousIntensityDistributionMeasure_type = 0;
type_declaration* IFC4X2_IfcLuminousIntensityMeasure_type = 0;
type_declaration* IFC4X2_IfcMagneticFluxDensityMeasure_type = 0;
type_declaration* IFC4X2_IfcMagneticFluxMeasure_type = 0;
type_declaration* IFC4X2_IfcMassDensityMeasure_type = 0;
type_declaration* IFC4X2_IfcMassFlowRateMeasure_type = 0;
type_declaration* IFC4X2_IfcMassMeasure_type = 0;
type_declaration* IFC4X2_IfcMassPerLengthMeasure_type = 0;
type_declaration* IFC4X2_IfcModulusOfElasticityMeasure_type = 0;
type_declaration* IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type = 0;
type_declaration* IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type = 0;
type_declaration* IFC4X2_IfcModulusOfSubgradeReactionMeasure_type = 0;
type_declaration* IFC4X2_IfcMoistureDiffusivityMeasure_type = 0;
type_declaration* IFC4X2_IfcMolecularWeightMeasure_type = 0;
type_declaration* IFC4X2_IfcMomentOfInertiaMeasure_type = 0;
type_declaration* IFC4X2_IfcMonetaryMeasure_type = 0;
type_declaration* IFC4X2_IfcMonthInYearNumber_type = 0;
type_declaration* IFC4X2_IfcNonNegativeLengthMeasure_type = 0;
type_declaration* IFC4X2_IfcNormalisedRatioMeasure_type = 0;
type_declaration* IFC4X2_IfcNumericMeasure_type = 0;
type_declaration* IFC4X2_IfcPHMeasure_type = 0;
type_declaration* IFC4X2_IfcParameterValue_type = 0;
type_declaration* IFC4X2_IfcPlanarForceMeasure_type = 0;
type_declaration* IFC4X2_IfcPlaneAngleMeasure_type = 0;
type_declaration* IFC4X2_IfcPositiveInteger_type = 0;
type_declaration* IFC4X2_IfcPositiveLengthMeasure_type = 0;
type_declaration* IFC4X2_IfcPositivePlaneAngleMeasure_type = 0;
type_declaration* IFC4X2_IfcPositiveRatioMeasure_type = 0;
type_declaration* IFC4X2_IfcPowerMeasure_type = 0;
type_declaration* IFC4X2_IfcPresentableText_type = 0;
type_declaration* IFC4X2_IfcPressureMeasure_type = 0;
type_declaration* IFC4X2_IfcPropertySetDefinitionSet_type = 0;
type_declaration* IFC4X2_IfcRadioActivityMeasure_type = 0;
type_declaration* IFC4X2_IfcRatioMeasure_type = 0;
type_declaration* IFC4X2_IfcReal_type = 0;
type_declaration* IFC4X2_IfcRotationalFrequencyMeasure_type = 0;
type_declaration* IFC4X2_IfcRotationalMassMeasure_type = 0;
type_declaration* IFC4X2_IfcRotationalStiffnessMeasure_type = 0;
type_declaration* IFC4X2_IfcSectionModulusMeasure_type = 0;
type_declaration* IFC4X2_IfcSectionalAreaIntegralMeasure_type = 0;
type_declaration* IFC4X2_IfcShearModulusMeasure_type = 0;
type_declaration* IFC4X2_IfcSolidAngleMeasure_type = 0;
type_declaration* IFC4X2_IfcSoundPowerLevelMeasure_type = 0;
type_declaration* IFC4X2_IfcSoundPowerMeasure_type = 0;
type_declaration* IFC4X2_IfcSoundPressureLevelMeasure_type = 0;
type_declaration* IFC4X2_IfcSoundPressureMeasure_type = 0;
type_declaration* IFC4X2_IfcSpecificHeatCapacityMeasure_type = 0;
type_declaration* IFC4X2_IfcSpecularExponent_type = 0;
type_declaration* IFC4X2_IfcSpecularRoughness_type = 0;
type_declaration* IFC4X2_IfcTemperatureGradientMeasure_type = 0;
type_declaration* IFC4X2_IfcTemperatureRateOfChangeMeasure_type = 0;
type_declaration* IFC4X2_IfcText_type = 0;
type_declaration* IFC4X2_IfcTextAlignment_type = 0;
type_declaration* IFC4X2_IfcTextDecoration_type = 0;
type_declaration* IFC4X2_IfcTextFontName_type = 0;
type_declaration* IFC4X2_IfcTextTransformation_type = 0;
type_declaration* IFC4X2_IfcThermalAdmittanceMeasure_type = 0;
type_declaration* IFC4X2_IfcThermalConductivityMeasure_type = 0;
type_declaration* IFC4X2_IfcThermalExpansionCoefficientMeasure_type = 0;
type_declaration* IFC4X2_IfcThermalResistanceMeasure_type = 0;
type_declaration* IFC4X2_IfcThermalTransmittanceMeasure_type = 0;
type_declaration* IFC4X2_IfcThermodynamicTemperatureMeasure_type = 0;
type_declaration* IFC4X2_IfcTime_type = 0;
type_declaration* IFC4X2_IfcTimeMeasure_type = 0;
type_declaration* IFC4X2_IfcTimeStamp_type = 0;
type_declaration* IFC4X2_IfcTorqueMeasure_type = 0;
type_declaration* IFC4X2_IfcURIReference_type = 0;
type_declaration* IFC4X2_IfcVaporPermeabilityMeasure_type = 0;
type_declaration* IFC4X2_IfcVolumeMeasure_type = 0;
type_declaration* IFC4X2_IfcVolumetricFlowRateMeasure_type = 0;
type_declaration* IFC4X2_IfcWarpingConstantMeasure_type = 0;
type_declaration* IFC4X2_IfcWarpingMomentMeasure_type = 0;
select_type* IFC4X2_IfcActorSelect_type = 0;
select_type* IFC4X2_IfcAppliedValueSelect_type = 0;
select_type* IFC4X2_IfcAxis2Placement_type = 0;
select_type* IFC4X2_IfcBendingParameterSelect_type = 0;
select_type* IFC4X2_IfcBooleanOperand_type = 0;
select_type* IFC4X2_IfcClassificationReferenceSelect_type = 0;
select_type* IFC4X2_IfcClassificationSelect_type = 0;
select_type* IFC4X2_IfcColour_type = 0;
select_type* IFC4X2_IfcColourOrFactor_type = 0;
select_type* IFC4X2_IfcCoordinateReferenceSystemSelect_type = 0;
select_type* IFC4X2_IfcCsgSelect_type = 0;
select_type* IFC4X2_IfcCurveFontOrScaledCurveFontSelect_type = 0;
select_type* IFC4X2_IfcCurveOnSurface_type = 0;
select_type* IFC4X2_IfcCurveOrEdgeCurve_type = 0;
select_type* IFC4X2_IfcCurveStyleFontSelect_type = 0;
select_type* IFC4X2_IfcDefinitionSelect_type = 0;
select_type* IFC4X2_IfcDerivedMeasureValue_type = 0;
select_type* IFC4X2_IfcDocumentSelect_type = 0;
select_type* IFC4X2_IfcFillStyleSelect_type = 0;
select_type* IFC4X2_IfcGeometricSetSelect_type = 0;
select_type* IFC4X2_IfcGridPlacementDirectionSelect_type = 0;
select_type* IFC4X2_IfcHatchLineDistanceSelect_type = 0;
select_type* IFC4X2_IfcLayeredItem_type = 0;
select_type* IFC4X2_IfcLibrarySelect_type = 0;
select_type* IFC4X2_IfcLightDistributionDataSourceSelect_type = 0;
select_type* IFC4X2_IfcMaterialSelect_type = 0;
select_type* IFC4X2_IfcMeasureValue_type = 0;
select_type* IFC4X2_IfcMetricValueSelect_type = 0;
select_type* IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type = 0;
select_type* IFC4X2_IfcModulusOfSubgradeReactionSelect_type = 0;
select_type* IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type = 0;
select_type* IFC4X2_IfcObjectReferenceSelect_type = 0;
select_type* IFC4X2_IfcPointOrVertexPoint_type = 0;
select_type* IFC4X2_IfcPresentationStyleSelect_type = 0;
select_type* IFC4X2_IfcProcessSelect_type = 0;
select_type* IFC4X2_IfcProductRepresentationSelect_type = 0;
select_type* IFC4X2_IfcProductSelect_type = 0;
select_type* IFC4X2_IfcPropertySetDefinitionSelect_type = 0;
select_type* IFC4X2_IfcResourceObjectSelect_type = 0;
select_type* IFC4X2_IfcResourceSelect_type = 0;
select_type* IFC4X2_IfcRotationalStiffnessSelect_type = 0;
select_type* IFC4X2_IfcSegmentIndexSelect_type = 0;
select_type* IFC4X2_IfcShell_type = 0;
select_type* IFC4X2_IfcSimpleValue_type = 0;
select_type* IFC4X2_IfcSizeSelect_type = 0;
select_type* IFC4X2_IfcSolidOrShell_type = 0;
select_type* IFC4X2_IfcSpaceBoundarySelect_type = 0;
select_type* IFC4X2_IfcSpecularHighlightSelect_type = 0;
select_type* IFC4X2_IfcStructuralActivityAssignmentSelect_type = 0;
select_type* IFC4X2_IfcStyleAssignmentSelect_type = 0;
select_type* IFC4X2_IfcSurfaceOrFaceSurface_type = 0;
select_type* IFC4X2_IfcSurfaceStyleElementSelect_type = 0;
select_type* IFC4X2_IfcTextFontSelect_type = 0;
select_type* IFC4X2_IfcTimeOrRatioSelect_type = 0;
select_type* IFC4X2_IfcTranslationalStiffnessSelect_type = 0;
select_type* IFC4X2_IfcTrimmingSelect_type = 0;
select_type* IFC4X2_IfcUnit_type = 0;
select_type* IFC4X2_IfcValue_type = 0;
select_type* IFC4X2_IfcVectorOrDirection_type = 0;
select_type* IFC4X2_IfcWarpingStiffnessSelect_type = 0;
enumeration_type* IFC4X2_IfcActionRequestTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcActionSourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcActionTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcActuatorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAddressTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAirTerminalBoxTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAirTerminalTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAlarmTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAlignmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAnalysisModelTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcAnalysisTheoryTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcArithmeticOperatorEnum_type = 0;
enumeration_type* IFC4X2_IfcAssemblyPlaceEnum_type = 0;
enumeration_type* IFC4X2_IfcAudioVisualApplianceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBSplineCurveForm_type = 0;
enumeration_type* IFC4X2_IfcBSplineSurfaceForm_type = 0;
enumeration_type* IFC4X2_IfcBeamTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBearingTypeDisplacementEnum_type = 0;
enumeration_type* IFC4X2_IfcBearingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBenchmarkEnum_type = 0;
enumeration_type* IFC4X2_IfcBoilerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBooleanOperator_type = 0;
enumeration_type* IFC4X2_IfcBridgePartTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBridgeTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBuildingElementPartTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBuildingElementProxyTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBuildingSystemTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcBurnerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCableCarrierFittingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCableCarrierSegmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCableFittingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCableSegmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCaissonFoundationTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcChangeActionEnum_type = 0;
enumeration_type* IFC4X2_IfcChillerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcChimneyTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCoilTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcColumnTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCommunicationsApplianceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcComplexPropertyTemplateTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCompressorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCondenserTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcConnectionTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcConstraintEnum_type = 0;
enumeration_type* IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcConstructionMaterialResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcConstructionProductResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcControllerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCooledBeamTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCoolingTowerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCostItemTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCostScheduleTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCoveringTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCrewResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCurtainWallTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcCurveInterpolationEnum_type = 0;
enumeration_type* IFC4X2_IfcDamperTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDataOriginEnum_type = 0;
enumeration_type* IFC4X2_IfcDerivedUnitEnum_type = 0;
enumeration_type* IFC4X2_IfcDirectionSenseEnum_type = 0;
enumeration_type* IFC4X2_IfcDiscreteAccessoryTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDistributionChamberElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDistributionPortTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDistributionSystemEnum_type = 0;
enumeration_type* IFC4X2_IfcDocumentConfidentialityEnum_type = 0;
enumeration_type* IFC4X2_IfcDocumentStatusEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorPanelOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorPanelPositionEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorStyleConstructionEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorStyleOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDoorTypeOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcDuctFittingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDuctSegmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcDuctSilencerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricApplianceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricDistributionBoardTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricGeneratorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricMotorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElectricTimeControlTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElementAssemblyTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcElementCompositionEnum_type = 0;
enumeration_type* IFC4X2_IfcEngineTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcEvaporativeCoolerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcEvaporatorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcEventTriggerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcEventTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcExternalSpatialElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFanTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFastenerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFilterTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFireSuppressionTerminalTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFlowDirectionEnum_type = 0;
enumeration_type* IFC4X2_IfcFlowInstrumentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFlowMeterTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFootingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcFurnitureTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcGeographicElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcGeometricProjectionEnum_type = 0;
enumeration_type* IFC4X2_IfcGlobalOrLocalEnum_type = 0;
enumeration_type* IFC4X2_IfcGridTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcHeatExchangerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcHumidifierTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcInterceptorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcInternalOrExternalEnum_type = 0;
enumeration_type* IFC4X2_IfcInventoryTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcJunctionBoxTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcKnotType_type = 0;
enumeration_type* IFC4X2_IfcLaborResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcLampTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcLayerSetDirectionEnum_type = 0;
enumeration_type* IFC4X2_IfcLightDistributionCurveEnum_type = 0;
enumeration_type* IFC4X2_IfcLightEmissionSourceEnum_type = 0;
enumeration_type* IFC4X2_IfcLightFixtureTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcLoadGroupTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcLogicalOperatorEnum_type = 0;
enumeration_type* IFC4X2_IfcMechanicalFastenerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcMedicalDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcMemberTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcMotorConnectionTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcNullStyle_type = 0;
enumeration_type* IFC4X2_IfcObjectTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcObjectiveEnum_type = 0;
enumeration_type* IFC4X2_IfcOccupantTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcOpeningElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcOutletTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPerformanceHistoryTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPermeableCoveringOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcPermitTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPhysicalOrVirtualEnum_type = 0;
enumeration_type* IFC4X2_IfcPileConstructionEnum_type = 0;
enumeration_type* IFC4X2_IfcPileTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPipeFittingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPipeSegmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPlateTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPreferredSurfaceCurveRepresentation_type = 0;
enumeration_type* IFC4X2_IfcProcedureTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcProfileTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcProjectOrderTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcProjectedOrTrueLengthEnum_type = 0;
enumeration_type* IFC4X2_IfcProjectionElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPropertySetTemplateTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcProtectiveDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcPumpTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcRailingTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcRampFlightTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcRampTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcRecurrenceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcReferentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcReflectanceMethodEnum_type = 0;
enumeration_type* IFC4X2_IfcReinforcingBarRoleEnum_type = 0;
enumeration_type* IFC4X2_IfcReinforcingBarSurfaceEnum_type = 0;
enumeration_type* IFC4X2_IfcReinforcingBarTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcReinforcingMeshTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcRoleEnum_type = 0;
enumeration_type* IFC4X2_IfcRoofTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSIPrefix_type = 0;
enumeration_type* IFC4X2_IfcSIUnitName_type = 0;
enumeration_type* IFC4X2_IfcSanitaryTerminalTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSectionTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSensorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSequenceEnum_type = 0;
enumeration_type* IFC4X2_IfcShadingDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSimplePropertyTemplateTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSlabTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSolarDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSpaceHeaterTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSpaceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSpatialZoneTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStackTerminalTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStairFlightTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStairTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStateEnum_type = 0;
enumeration_type* IFC4X2_IfcStructuralCurveActivityTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStructuralCurveMemberTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSubContractResourceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSurfaceFeatureTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSurfaceSide_type = 0;
enumeration_type* IFC4X2_IfcSwitchingDeviceTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcSystemFurnitureElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTankTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTaskDurationEnum_type = 0;
enumeration_type* IFC4X2_IfcTaskTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTendonAnchorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTendonConduitTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTendonTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTextPath_type = 0;
enumeration_type* IFC4X2_IfcTimeSeriesDataTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTransformerTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTransitionCode_type = 0;
enumeration_type* IFC4X2_IfcTransitionCurveType_type = 0;
enumeration_type* IFC4X2_IfcTransportElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcTrimmingPreference_type = 0;
enumeration_type* IFC4X2_IfcTubeBundleTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcUnitEnum_type = 0;
enumeration_type* IFC4X2_IfcUnitaryControlElementTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcUnitaryEquipmentTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcValveTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcVibrationDamperTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcVibrationIsolatorTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcVoidingFeatureTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWallTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWasteTerminalTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowPanelOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowPanelPositionEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowStyleConstructionEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowStyleOperationEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWindowTypePartitioningEnum_type = 0;
enumeration_type* IFC4X2_IfcWorkCalendarTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWorkPlanTypeEnum_type = 0;
enumeration_type* IFC4X2_IfcWorkScheduleTypeEnum_type = 0;
class IFC4X2_instance_factory : public IfcParse::instance_factory {
virtual IfcUtil::IfcBaseClass* operator()(IfcEntityInstanceData* data) const {
switch(data->type()->index_in_schema()) {
case 0: return new ::Ifc4x2::IfcAbsorbedDoseMeasure(data);
case 1: return new ::Ifc4x2::IfcAccelerationMeasure(data);
case 2: return new ::Ifc4x2::IfcActionRequest(data);
case 3: return new ::Ifc4x2::IfcActionRequestTypeEnum(data);
case 4: return new ::Ifc4x2::IfcActionSourceTypeEnum(data);
case 5: return new ::Ifc4x2::IfcActionTypeEnum(data);
case 6: return new ::Ifc4x2::IfcActor(data);
case 7: return new ::Ifc4x2::IfcActorRole(data);
case 9: return new ::Ifc4x2::IfcActuator(data);
case 10: return new ::Ifc4x2::IfcActuatorType(data);
case 11: return new ::Ifc4x2::IfcActuatorTypeEnum(data);
case 12: return new ::Ifc4x2::IfcAddress(data);
case 13: return new ::Ifc4x2::IfcAddressTypeEnum(data);
case 14: return new ::Ifc4x2::IfcAdvancedBrep(data);
case 15: return new ::Ifc4x2::IfcAdvancedBrepWithVoids(data);
case 16: return new ::Ifc4x2::IfcAdvancedFace(data);
case 17: return new ::Ifc4x2::IfcAirTerminal(data);
case 18: return new ::Ifc4x2::IfcAirTerminalBox(data);
case 19: return new ::Ifc4x2::IfcAirTerminalBoxType(data);
case 20: return new ::Ifc4x2::IfcAirTerminalBoxTypeEnum(data);
case 21: return new ::Ifc4x2::IfcAirTerminalType(data);
case 22: return new ::Ifc4x2::IfcAirTerminalTypeEnum(data);
case 23: return new ::Ifc4x2::IfcAirToAirHeatRecovery(data);
case 24: return new ::Ifc4x2::IfcAirToAirHeatRecoveryType(data);
case 25: return new ::Ifc4x2::IfcAirToAirHeatRecoveryTypeEnum(data);
case 26: return new ::Ifc4x2::IfcAlarm(data);
case 27: return new ::Ifc4x2::IfcAlarmType(data);
case 28: return new ::Ifc4x2::IfcAlarmTypeEnum(data);
case 29: return new ::Ifc4x2::IfcAlignment(data);
case 30: return new ::Ifc4x2::IfcAlignment2DHorizontal(data);
case 31: return new ::Ifc4x2::IfcAlignment2DHorizontalSegment(data);
case 32: return new ::Ifc4x2::IfcAlignment2DSegment(data);
case 33: return new ::Ifc4x2::IfcAlignment2DVerSegCircularArc(data);
case 34: return new ::Ifc4x2::IfcAlignment2DVerSegLine(data);
case 35: return new ::Ifc4x2::IfcAlignment2DVerSegParabolicArc(data);
case 36: return new ::Ifc4x2::IfcAlignment2DVertical(data);
case 37: return new ::Ifc4x2::IfcAlignment2DVerticalSegment(data);
case 38: return new ::Ifc4x2::IfcAlignmentCurve(data);
case 39: return new ::Ifc4x2::IfcAlignmentTypeEnum(data);
case 40: return new ::Ifc4x2::IfcAmountOfSubstanceMeasure(data);
case 41: return new ::Ifc4x2::IfcAnalysisModelTypeEnum(data);
case 42: return new ::Ifc4x2::IfcAnalysisTheoryTypeEnum(data);
case 43: return new ::Ifc4x2::IfcAngularVelocityMeasure(data);
case 44: return new ::Ifc4x2::IfcAnnotation(data);
case 45: return new ::Ifc4x2::IfcAnnotationFillArea(data);
case 46: return new ::Ifc4x2::IfcApplication(data);
case 47: return new ::Ifc4x2::IfcAppliedValue(data);
case 49: return new ::Ifc4x2::IfcApproval(data);
case 50: return new ::Ifc4x2::IfcApprovalRelationship(data);
case 51: return new ::Ifc4x2::IfcArbitraryClosedProfileDef(data);
case 52: return new ::Ifc4x2::IfcArbitraryOpenProfileDef(data);
case 53: return new ::Ifc4x2::IfcArbitraryProfileDefWithVoids(data);
case 54: return new ::Ifc4x2::IfcArcIndex(data);
case 55: return new ::Ifc4x2::IfcAreaDensityMeasure(data);
case 56: return new ::Ifc4x2::IfcAreaMeasure(data);
case 57: return new ::Ifc4x2::IfcArithmeticOperatorEnum(data);
case 58: return new ::Ifc4x2::IfcAssemblyPlaceEnum(data);
case 59: return new ::Ifc4x2::IfcAsset(data);
case 60: return new ::Ifc4x2::IfcAsymmetricIShapeProfileDef(data);
case 61: return new ::Ifc4x2::IfcAudioVisualAppliance(data);
case 62: return new ::Ifc4x2::IfcAudioVisualApplianceType(data);
case 63: return new ::Ifc4x2::IfcAudioVisualApplianceTypeEnum(data);
case 64: return new ::Ifc4x2::IfcAxis1Placement(data);
case 66: return new ::Ifc4x2::IfcAxis2Placement2D(data);
case 67: return new ::Ifc4x2::IfcAxis2Placement3D(data);
case 68: return new ::Ifc4x2::IfcBeam(data);
case 69: return new ::Ifc4x2::IfcBeamStandardCase(data);
case 70: return new ::Ifc4x2::IfcBeamType(data);
case 71: return new ::Ifc4x2::IfcBeamTypeEnum(data);
case 72: return new ::Ifc4x2::IfcBearing(data);
case 73: return new ::Ifc4x2::IfcBearingType(data);
case 74: return new ::Ifc4x2::IfcBearingTypeDisplacementEnum(data);
case 75: return new ::Ifc4x2::IfcBearingTypeEnum(data);
case 76: return new ::Ifc4x2::IfcBenchmarkEnum(data);
case 78: return new ::Ifc4x2::IfcBinary(data);
case 79: return new ::Ifc4x2::IfcBlobTexture(data);
case 80: return new ::Ifc4x2::IfcBlock(data);
case 81: return new ::Ifc4x2::IfcBoiler(data);
case 82: return new ::Ifc4x2::IfcBoilerType(data);
case 83: return new ::Ifc4x2::IfcBoilerTypeEnum(data);
case 84: return new ::Ifc4x2::IfcBoolean(data);
case 85: return new ::Ifc4x2::IfcBooleanClippingResult(data);
case 87: return new ::Ifc4x2::IfcBooleanOperator(data);
case 88: return new ::Ifc4x2::IfcBooleanResult(data);
case 89: return new ::Ifc4x2::IfcBoundaryCondition(data);
case 90: return new ::Ifc4x2::IfcBoundaryCurve(data);
case 91: return new ::Ifc4x2::IfcBoundaryEdgeCondition(data);
case 92: return new ::Ifc4x2::IfcBoundaryFaceCondition(data);
case 93: return new ::Ifc4x2::IfcBoundaryNodeCondition(data);
case 94: return new ::Ifc4x2::IfcBoundaryNodeConditionWarping(data);
case 95: return new ::Ifc4x2::IfcBoundedCurve(data);
case 96: return new ::Ifc4x2::IfcBoundedSurface(data);
case 97: return new ::Ifc4x2::IfcBoundingBox(data);
case 98: return new ::Ifc4x2::IfcBoxAlignment(data);
case 99: return new ::Ifc4x2::IfcBoxedHalfSpace(data);
case 100: return new ::Ifc4x2::IfcBridge(data);
case 101: return new ::Ifc4x2::IfcBridgePart(data);
case 102: return new ::Ifc4x2::IfcBridgePartTypeEnum(data);
case 103: return new ::Ifc4x2::IfcBridgeTypeEnum(data);
case 104: return new ::Ifc4x2::IfcBSplineCurve(data);
case 105: return new ::Ifc4x2::IfcBSplineCurveForm(data);
case 106: return new ::Ifc4x2::IfcBSplineCurveWithKnots(data);
case 107: return new ::Ifc4x2::IfcBSplineSurface(data);
case 108: return new ::Ifc4x2::IfcBSplineSurfaceForm(data);
case 109: return new ::Ifc4x2::IfcBSplineSurfaceWithKnots(data);
case 110: return new ::Ifc4x2::IfcBuilding(data);
case 111: return new ::Ifc4x2::IfcBuildingElement(data);
case 112: return new ::Ifc4x2::IfcBuildingElementPart(data);
case 113: return new ::Ifc4x2::IfcBuildingElementPartType(data);
case 114: return new ::Ifc4x2::IfcBuildingElementPartTypeEnum(data);
case 115: return new ::Ifc4x2::IfcBuildingElementProxy(data);
case 116: return new ::Ifc4x2::IfcBuildingElementProxyType(data);
case 117: return new ::Ifc4x2::IfcBuildingElementProxyTypeEnum(data);
case 118: return new ::Ifc4x2::IfcBuildingElementType(data);
case 119: return new ::Ifc4x2::IfcBuildingStorey(data);
case 120: return new ::Ifc4x2::IfcBuildingSystem(data);
case 121: return new ::Ifc4x2::IfcBuildingSystemTypeEnum(data);
case 122: return new ::Ifc4x2::IfcBurner(data);
case 123: return new ::Ifc4x2::IfcBurnerType(data);
case 124: return new ::Ifc4x2::IfcBurnerTypeEnum(data);
case 125: return new ::Ifc4x2::IfcCableCarrierFitting(data);
case 126: return new ::Ifc4x2::IfcCableCarrierFittingType(data);
case 127: return new ::Ifc4x2::IfcCableCarrierFittingTypeEnum(data);
case 128: return new ::Ifc4x2::IfcCableCarrierSegment(data);
case 129: return new ::Ifc4x2::IfcCableCarrierSegmentType(data);
case 130: return new ::Ifc4x2::IfcCableCarrierSegmentTypeEnum(data);
case 131: return new ::Ifc4x2::IfcCableFitting(data);
case 132: return new ::Ifc4x2::IfcCableFittingType(data);
case 133: return new ::Ifc4x2::IfcCableFittingTypeEnum(data);
case 134: return new ::Ifc4x2::IfcCableSegment(data);
case 135: return new ::Ifc4x2::IfcCableSegmentType(data);
case 136: return new ::Ifc4x2::IfcCableSegmentTypeEnum(data);
case 137: return new ::Ifc4x2::IfcCaissonFoundation(data);
case 138: return new ::Ifc4x2::IfcCaissonFoundationType(data);
case 139: return new ::Ifc4x2::IfcCaissonFoundationTypeEnum(data);
case 140: return new ::Ifc4x2::IfcCardinalPointReference(data);
case 141: return new ::Ifc4x2::IfcCartesianPoint(data);
case 142: return new ::Ifc4x2::IfcCartesianPointList(data);
case 143: return new ::Ifc4x2::IfcCartesianPointList2D(data);
case 144: return new ::Ifc4x2::IfcCartesianPointList3D(data);
case 145: return new ::Ifc4x2::IfcCartesianTransformationOperator(data);
case 146: return new ::Ifc4x2::IfcCartesianTransformationOperator2D(data);
case 147: return new ::Ifc4x2::IfcCartesianTransformationOperator2DnonUniform(data);
case 148: return new ::Ifc4x2::IfcCartesianTransformationOperator3D(data);
case 149: return new ::Ifc4x2::IfcCartesianTransformationOperator3DnonUniform(data);
case 150: return new ::Ifc4x2::IfcCenterLineProfileDef(data);
case 151: return new ::Ifc4x2::IfcChangeActionEnum(data);
case 152: return new ::Ifc4x2::IfcChiller(data);
case 153: return new ::Ifc4x2::IfcChillerType(data);
case 154: return new ::Ifc4x2::IfcChillerTypeEnum(data);
case 155: return new ::Ifc4x2::IfcChimney(data);
case 156: return new ::Ifc4x2::IfcChimneyType(data);
case 157: return new ::Ifc4x2::IfcChimneyTypeEnum(data);
case 158: return new ::Ifc4x2::IfcCircle(data);
case 159: return new ::Ifc4x2::IfcCircleHollowProfileDef(data);
case 160: return new ::Ifc4x2::IfcCircleProfileDef(data);
case 161: return new ::Ifc4x2::IfcCircularArcSegment2D(data);
case 162: return new ::Ifc4x2::IfcCivilElement(data);
case 163: return new ::Ifc4x2::IfcCivilElementType(data);
case 164: return new ::Ifc4x2::IfcClassification(data);
case 165: return new ::Ifc4x2::IfcClassificationReference(data);
case 168: return new ::Ifc4x2::IfcClosedShell(data);
case 169: return new ::Ifc4x2::IfcCoil(data);
case 170: return new ::Ifc4x2::IfcCoilType(data);
case 171: return new ::Ifc4x2::IfcCoilTypeEnum(data);
case 174: return new ::Ifc4x2::IfcColourRgb(data);
case 175: return new ::Ifc4x2::IfcColourRgbList(data);
case 176: return new ::Ifc4x2::IfcColourSpecification(data);
case 177: return new ::Ifc4x2::IfcColumn(data);
case 178: return new ::Ifc4x2::IfcColumnStandardCase(data);
case 179: return new ::Ifc4x2::IfcColumnType(data);
case 180: return new ::Ifc4x2::IfcColumnTypeEnum(data);
case 181: return new ::Ifc4x2::IfcCommunicationsAppliance(data);
case 182: return new ::Ifc4x2::IfcCommunicationsApplianceType(data);
case 183: return new ::Ifc4x2::IfcCommunicationsApplianceTypeEnum(data);
case 184: return new ::Ifc4x2::IfcComplexNumber(data);
case 185: return new ::Ifc4x2::IfcComplexProperty(data);
case 186: return new ::Ifc4x2::IfcComplexPropertyTemplate(data);
case 187: return new ::Ifc4x2::IfcComplexPropertyTemplateTypeEnum(data);
case 188: return new ::Ifc4x2::IfcCompositeCurve(data);
case 189: return new ::Ifc4x2::IfcCompositeCurveOnSurface(data);
case 190: return new ::Ifc4x2::IfcCompositeCurveSegment(data);
case 191: return new ::Ifc4x2::IfcCompositeProfileDef(data);
case 192: return new ::Ifc4x2::IfcCompoundPlaneAngleMeasure(data);
case 193: return new ::Ifc4x2::IfcCompressor(data);
case 194: return new ::Ifc4x2::IfcCompressorType(data);
case 195: return new ::Ifc4x2::IfcCompressorTypeEnum(data);
case 196: return new ::Ifc4x2::IfcCondenser(data);
case 197: return new ::Ifc4x2::IfcCondenserType(data);
case 198: return new ::Ifc4x2::IfcCondenserTypeEnum(data);
case 199: return new ::Ifc4x2::IfcConic(data);
case 200: return new ::Ifc4x2::IfcConnectedFaceSet(data);
case 201: return new ::Ifc4x2::IfcConnectionCurveGeometry(data);
case 202: return new ::Ifc4x2::IfcConnectionGeometry(data);
case 203: return new ::Ifc4x2::IfcConnectionPointEccentricity(data);
case 204: return new ::Ifc4x2::IfcConnectionPointGeometry(data);
case 205: return new ::Ifc4x2::IfcConnectionSurfaceGeometry(data);
case 206: return new ::Ifc4x2::IfcConnectionTypeEnum(data);
case 207: return new ::Ifc4x2::IfcConnectionVolumeGeometry(data);
case 208: return new ::Ifc4x2::IfcConstraint(data);
case 209: return new ::Ifc4x2::IfcConstraintEnum(data);
case 210: return new ::Ifc4x2::IfcConstructionEquipmentResource(data);
case 211: return new ::Ifc4x2::IfcConstructionEquipmentResourceType(data);
case 212: return new ::Ifc4x2::IfcConstructionEquipmentResourceTypeEnum(data);
case 213: return new ::Ifc4x2::IfcConstructionMaterialResource(data);
case 214: return new ::Ifc4x2::IfcConstructionMaterialResourceType(data);
case 215: return new ::Ifc4x2::IfcConstructionMaterialResourceTypeEnum(data);
case 216: return new ::Ifc4x2::IfcConstructionProductResource(data);
case 217: return new ::Ifc4x2::IfcConstructionProductResourceType(data);
case 218: return new ::Ifc4x2::IfcConstructionProductResourceTypeEnum(data);
case 219: return new ::Ifc4x2::IfcConstructionResource(data);
case 220: return new ::Ifc4x2::IfcConstructionResourceType(data);
case 221: return new ::Ifc4x2::IfcContext(data);
case 222: return new ::Ifc4x2::IfcContextDependentMeasure(data);
case 223: return new ::Ifc4x2::IfcContextDependentUnit(data);
case 224: return new ::Ifc4x2::IfcControl(data);
case 225: return new ::Ifc4x2::IfcController(data);
case 226: return new ::Ifc4x2::IfcControllerType(data);
case 227: return new ::Ifc4x2::IfcControllerTypeEnum(data);
case 228: return new ::Ifc4x2::IfcConversionBasedUnit(data);
case 229: return new ::Ifc4x2::IfcConversionBasedUnitWithOffset(data);
case 230: return new ::Ifc4x2::IfcCooledBeam(data);
case 231: return new ::Ifc4x2::IfcCooledBeamType(data);
case 232: return new ::Ifc4x2::IfcCooledBeamTypeEnum(data);
case 233: return new ::Ifc4x2::IfcCoolingTower(data);
case 234: return new ::Ifc4x2::IfcCoolingTowerType(data);
case 235: return new ::Ifc4x2::IfcCoolingTowerTypeEnum(data);
case 236: return new ::Ifc4x2::IfcCoordinateOperation(data);
case 237: return new ::Ifc4x2::IfcCoordinateReferenceSystem(data);
case 239: return new ::Ifc4x2::IfcCostItem(data);
case 240: return new ::Ifc4x2::IfcCostItemTypeEnum(data);
case 241: return new ::Ifc4x2::IfcCostSchedule(data);
case 242: return new ::Ifc4x2::IfcCostScheduleTypeEnum(data);
case 243: return new ::Ifc4x2::IfcCostValue(data);
case 244: return new ::Ifc4x2::IfcCountMeasure(data);
case 245: return new ::Ifc4x2::IfcCovering(data);
case 246: return new ::Ifc4x2::IfcCoveringType(data);
case 247: return new ::Ifc4x2::IfcCoveringTypeEnum(data);
case 248: return new ::Ifc4x2::IfcCrewResource(data);
case 249: return new ::Ifc4x2::IfcCrewResourceType(data);
case 250: return new ::Ifc4x2::IfcCrewResourceTypeEnum(data);
case 251: return new ::Ifc4x2::IfcCsgPrimitive3D(data);
case 253: return new ::Ifc4x2::IfcCsgSolid(data);
case 254: return new ::Ifc4x2::IfcCShapeProfileDef(data);
case 255: return new ::Ifc4x2::IfcCurrencyRelationship(data);
case 256: return new ::Ifc4x2::IfcCurtainWall(data);
case 257: return new ::Ifc4x2::IfcCurtainWallType(data);
case 258: return new ::Ifc4x2::IfcCurtainWallTypeEnum(data);
case 259: return new ::Ifc4x2::IfcCurvatureMeasure(data);
case 260: return new ::Ifc4x2::IfcCurve(data);
case 261: return new ::Ifc4x2::IfcCurveBoundedPlane(data);
case 262: return new ::Ifc4x2::IfcCurveBoundedSurface(data);
case 264: return new ::Ifc4x2::IfcCurveInterpolationEnum(data);
case 267: return new ::Ifc4x2::IfcCurveSegment2D(data);
case 268: return new ::Ifc4x2::IfcCurveStyle(data);
case 269: return new ::Ifc4x2::IfcCurveStyleFont(data);
case 270: return new ::Ifc4x2::IfcCurveStyleFontAndScaling(data);
case 271: return new ::Ifc4x2::IfcCurveStyleFontPattern(data);
case 273: return new ::Ifc4x2::IfcCylindricalSurface(data);
case 274: return new ::Ifc4x2::IfcDamper(data);
case 275: return new ::Ifc4x2::IfcDamperType(data);
case 276: return new ::Ifc4x2::IfcDamperTypeEnum(data);
case 277: return new ::Ifc4x2::IfcDataOriginEnum(data);
case 278: return new ::Ifc4x2::IfcDate(data);
case 279: return new ::Ifc4x2::IfcDateTime(data);
case 280: return new ::Ifc4x2::IfcDayInMonthNumber(data);
case 281: return new ::Ifc4x2::IfcDayInWeekNumber(data);
case 282: return new ::Ifc4x2::IfcDeepFoundation(data);
case 283: return new ::Ifc4x2::IfcDeepFoundationType(data);
case 286: return new ::Ifc4x2::IfcDerivedProfileDef(data);
case 287: return new ::Ifc4x2::IfcDerivedUnit(data);
case 288: return new ::Ifc4x2::IfcDerivedUnitElement(data);
case 289: return new ::Ifc4x2::IfcDerivedUnitEnum(data);
case 290: return new ::Ifc4x2::IfcDescriptiveMeasure(data);
case 291: return new ::Ifc4x2::IfcDimensionalExponents(data);
case 292: return new ::Ifc4x2::IfcDimensionCount(data);
case 293: return new ::Ifc4x2::IfcDirection(data);
case 294: return new ::Ifc4x2::IfcDirectionSenseEnum(data);
case 295: return new ::Ifc4x2::IfcDiscreteAccessory(data);
case 296: return new ::Ifc4x2::IfcDiscreteAccessoryType(data);
case 297: return new ::Ifc4x2::IfcDiscreteAccessoryTypeEnum(data);
case 298: return new ::Ifc4x2::IfcDistanceExpression(data);
case 299: return new ::Ifc4x2::IfcDistributionChamberElement(data);
case 300: return new ::Ifc4x2::IfcDistributionChamberElementType(data);
case 301: return new ::Ifc4x2::IfcDistributionChamberElementTypeEnum(data);
case 302: return new ::Ifc4x2::IfcDistributionCircuit(data);
case 303: return new ::Ifc4x2::IfcDistributionControlElement(data);
case 304: return new ::Ifc4x2::IfcDistributionControlElementType(data);
case 305: return new ::Ifc4x2::IfcDistributionElement(data);
case 306: return new ::Ifc4x2::IfcDistributionElementType(data);
case 307: return new ::Ifc4x2::IfcDistributionFlowElement(data);
case 308: return new ::Ifc4x2::IfcDistributionFlowElementType(data);
case 309: return new ::Ifc4x2::IfcDistributionPort(data);
case 310: return new ::Ifc4x2::IfcDistributionPortTypeEnum(data);
case 311: return new ::Ifc4x2::IfcDistributionSystem(data);
case 312: return new ::Ifc4x2::IfcDistributionSystemEnum(data);
case 313: return new ::Ifc4x2::IfcDocumentConfidentialityEnum(data);
case 314: return new ::Ifc4x2::IfcDocumentInformation(data);
case 315: return new ::Ifc4x2::IfcDocumentInformationRelationship(data);
case 316: return new ::Ifc4x2::IfcDocumentReference(data);
case 318: return new ::Ifc4x2::IfcDocumentStatusEnum(data);
case 319: return new ::Ifc4x2::IfcDoor(data);
case 320: return new ::Ifc4x2::IfcDoorLiningProperties(data);
case 321: return new ::Ifc4x2::IfcDoorPanelOperationEnum(data);
case 322: return new ::Ifc4x2::IfcDoorPanelPositionEnum(data);
case 323: return new ::Ifc4x2::IfcDoorPanelProperties(data);
case 324: return new ::Ifc4x2::IfcDoorStandardCase(data);
case 325: return new ::Ifc4x2::IfcDoorStyle(data);
case 326: return new ::Ifc4x2::IfcDoorStyleConstructionEnum(data);
case 327: return new ::Ifc4x2::IfcDoorStyleOperationEnum(data);
case 328: return new ::Ifc4x2::IfcDoorType(data);
case 329: return new ::Ifc4x2::IfcDoorTypeEnum(data);
case 330: return new ::Ifc4x2::IfcDoorTypeOperationEnum(data);
case 331: return new ::Ifc4x2::IfcDoseEquivalentMeasure(data);
case 332: return new ::Ifc4x2::IfcDraughtingPreDefinedColour(data);
case 333: return new ::Ifc4x2::IfcDraughtingPreDefinedCurveFont(data);
case 334: return new ::Ifc4x2::IfcDuctFitting(data);
case 335: return new ::Ifc4x2::IfcDuctFittingType(data);
case 336: return new ::Ifc4x2::IfcDuctFittingTypeEnum(data);
case 337: return new ::Ifc4x2::IfcDuctSegment(data);
case 338: return new ::Ifc4x2::IfcDuctSegmentType(data);
case 339: return new ::Ifc4x2::IfcDuctSegmentTypeEnum(data);
case 340: return new ::Ifc4x2::IfcDuctSilencer(data);
case 341: return new ::Ifc4x2::IfcDuctSilencerType(data);
case 342: return new ::Ifc4x2::IfcDuctSilencerTypeEnum(data);
case 343: return new ::Ifc4x2::IfcDuration(data);
case 344: return new ::Ifc4x2::IfcDynamicViscosityMeasure(data);
case 345: return new ::Ifc4x2::IfcEdge(data);
case 346: return new ::Ifc4x2::IfcEdgeCurve(data);
case 347: return new ::Ifc4x2::IfcEdgeLoop(data);
case 348: return new ::Ifc4x2::IfcElectricAppliance(data);
case 349: return new ::Ifc4x2::IfcElectricApplianceType(data);
case 350: return new ::Ifc4x2::IfcElectricApplianceTypeEnum(data);
case 351: return new ::Ifc4x2::IfcElectricCapacitanceMeasure(data);
case 352: return new ::Ifc4x2::IfcElectricChargeMeasure(data);
case 353: return new ::Ifc4x2::IfcElectricConductanceMeasure(data);
case 354: return new ::Ifc4x2::IfcElectricCurrentMeasure(data);
case 355: return new ::Ifc4x2::IfcElectricDistributionBoard(data);
case 356: return new ::Ifc4x2::IfcElectricDistributionBoardType(data);
case 357: return new ::Ifc4x2::IfcElectricDistributionBoardTypeEnum(data);
case 358: return new ::Ifc4x2::IfcElectricFlowStorageDevice(data);
case 359: return new ::Ifc4x2::IfcElectricFlowStorageDeviceType(data);
case 360: return new ::Ifc4x2::IfcElectricFlowStorageDeviceTypeEnum(data);
case 361: return new ::Ifc4x2::IfcElectricGenerator(data);
case 362: return new ::Ifc4x2::IfcElectricGeneratorType(data);
case 363: return new ::Ifc4x2::IfcElectricGeneratorTypeEnum(data);
case 364: return new ::Ifc4x2::IfcElectricMotor(data);
case 365: return new ::Ifc4x2::IfcElectricMotorType(data);
case 366: return new ::Ifc4x2::IfcElectricMotorTypeEnum(data);
case 367: return new ::Ifc4x2::IfcElectricResistanceMeasure(data);
case 368: return new ::Ifc4x2::IfcElectricTimeControl(data);
case 369: return new ::Ifc4x2::IfcElectricTimeControlType(data);
case 370: return new ::Ifc4x2::IfcElectricTimeControlTypeEnum(data);
case 371: return new ::Ifc4x2::IfcElectricVoltageMeasure(data);
case 372: return new ::Ifc4x2::IfcElement(data);
case 373: return new ::Ifc4x2::IfcElementarySurface(data);
case 374: return new ::Ifc4x2::IfcElementAssembly(data);
case 375: return new ::Ifc4x2::IfcElementAssemblyType(data);
case 376: return new ::Ifc4x2::IfcElementAssemblyTypeEnum(data);
case 377: return new ::Ifc4x2::IfcElementComponent(data);
case 378: return new ::Ifc4x2::IfcElementComponentType(data);
case 379: return new ::Ifc4x2::IfcElementCompositionEnum(data);
case 380: return new ::Ifc4x2::IfcElementQuantity(data);
case 381: return new ::Ifc4x2::IfcElementType(data);
case 382: return new ::Ifc4x2::IfcEllipse(data);
case 383: return new ::Ifc4x2::IfcEllipseProfileDef(data);
case 384: return new ::Ifc4x2::IfcEnergyConversionDevice(data);
case 385: return new ::Ifc4x2::IfcEnergyConversionDeviceType(data);
case 386: return new ::Ifc4x2::IfcEnergyMeasure(data);
case 387: return new ::Ifc4x2::IfcEngine(data);
case 388: return new ::Ifc4x2::IfcEngineType(data);
case 389: return new ::Ifc4x2::IfcEngineTypeEnum(data);
case 390: return new ::Ifc4x2::IfcEvaporativeCooler(data);
case 391: return new ::Ifc4x2::IfcEvaporativeCoolerType(data);
case 392: return new ::Ifc4x2::IfcEvaporativeCoolerTypeEnum(data);
case 393: return new ::Ifc4x2::IfcEvaporator(data);
case 394: return new ::Ifc4x2::IfcEvaporatorType(data);
case 395: return new ::Ifc4x2::IfcEvaporatorTypeEnum(data);
case 396: return new ::Ifc4x2::IfcEvent(data);
case 397: return new ::Ifc4x2::IfcEventTime(data);
case 398: return new ::Ifc4x2::IfcEventTriggerTypeEnum(data);
case 399: return new ::Ifc4x2::IfcEventType(data);
case 400: return new ::Ifc4x2::IfcEventTypeEnum(data);
case 401: return new ::Ifc4x2::IfcExtendedProperties(data);
case 402: return new ::Ifc4x2::IfcExternalInformation(data);
case 403: return new ::Ifc4x2::IfcExternallyDefinedHatchStyle(data);
case 404: return new ::Ifc4x2::IfcExternallyDefinedSurfaceStyle(data);
case 405: return new ::Ifc4x2::IfcExternallyDefinedTextFont(data);
case 406: return new ::Ifc4x2::IfcExternalReference(data);
case 407: return new ::Ifc4x2::IfcExternalReferenceRelationship(data);
case 408: return new ::Ifc4x2::IfcExternalSpatialElement(data);
case 409: return new ::Ifc4x2::IfcExternalSpatialElementTypeEnum(data);
case 410: return new ::Ifc4x2::IfcExternalSpatialStructureElement(data);
case 411: return new ::Ifc4x2::IfcExtrudedAreaSolid(data);
case 412: return new ::Ifc4x2::IfcExtrudedAreaSolidTapered(data);
case 413: return new ::Ifc4x2::IfcFace(data);
case 414: return new ::Ifc4x2::IfcFaceBasedSurfaceModel(data);
case 415: return new ::Ifc4x2::IfcFaceBound(data);
case 416: return new ::Ifc4x2::IfcFaceOuterBound(data);
case 417: return new ::Ifc4x2::IfcFaceSurface(data);
case 418: return new ::Ifc4x2::IfcFacetedBrep(data);
case 419: return new ::Ifc4x2::IfcFacetedBrepWithVoids(data);
case 420: return new ::Ifc4x2::IfcFacility(data);
case 421: return new ::Ifc4x2::IfcFacilityPart(data);
case 422: return new ::Ifc4x2::IfcFailureConnectionCondition(data);
case 423: return new ::Ifc4x2::IfcFan(data);
case 424: return new ::Ifc4x2::IfcFanType(data);
case 425: return new ::Ifc4x2::IfcFanTypeEnum(data);
case 426: return new ::Ifc4x2::IfcFastener(data);
case 427: return new ::Ifc4x2::IfcFastenerType(data);
case 428: return new ::Ifc4x2::IfcFastenerTypeEnum(data);
case 429: return new ::Ifc4x2::IfcFeatureElement(data);
case 430: return new ::Ifc4x2::IfcFeatureElementAddition(data);
case 431: return new ::Ifc4x2::IfcFeatureElementSubtraction(data);
case 432: return new ::Ifc4x2::IfcFillAreaStyle(data);
case 433: return new ::Ifc4x2::IfcFillAreaStyleHatching(data);
case 434: return new ::Ifc4x2::IfcFillAreaStyleTiles(data);
case 436: return new ::Ifc4x2::IfcFilter(data);
case 437: return new ::Ifc4x2::IfcFilterType(data);
case 438: return new ::Ifc4x2::IfcFilterTypeEnum(data);
case 439: return new ::Ifc4x2::IfcFireSuppressionTerminal(data);
case 440: return new ::Ifc4x2::IfcFireSuppressionTerminalType(data);
case 441: return new ::Ifc4x2::IfcFireSuppressionTerminalTypeEnum(data);
case 442: return new ::Ifc4x2::IfcFixedReferenceSweptAreaSolid(data);
case 443: return new ::Ifc4x2::IfcFlowController(data);
case 444: return new ::Ifc4x2::IfcFlowControllerType(data);
case 445: return new ::Ifc4x2::IfcFlowDirectionEnum(data);
case 446: return new ::Ifc4x2::IfcFlowFitting(data);
case 447: return new ::Ifc4x2::IfcFlowFittingType(data);
case 448: return new ::Ifc4x2::IfcFlowInstrument(data);
case 449: return new ::Ifc4x2::IfcFlowInstrumentType(data);
case 450: return new ::Ifc4x2::IfcFlowInstrumentTypeEnum(data);
case 451: return new ::Ifc4x2::IfcFlowMeter(data);
case 452: return new ::Ifc4x2::IfcFlowMeterType(data);
case 453: return new ::Ifc4x2::IfcFlowMeterTypeEnum(data);
case 454: return new ::Ifc4x2::IfcFlowMovingDevice(data);
case 455: return new ::Ifc4x2::IfcFlowMovingDeviceType(data);
case 456: return new ::Ifc4x2::IfcFlowSegment(data);
case 457: return new ::Ifc4x2::IfcFlowSegmentType(data);
case 458: return new ::Ifc4x2::IfcFlowStorageDevice(data);
case 459: return new ::Ifc4x2::IfcFlowStorageDeviceType(data);
case 460: return new ::Ifc4x2::IfcFlowTerminal(data);
case 461: return new ::Ifc4x2::IfcFlowTerminalType(data);
case 462: return new ::Ifc4x2::IfcFlowTreatmentDevice(data);
case 463: return new ::Ifc4x2::IfcFlowTreatmentDeviceType(data);
case 464: return new ::Ifc4x2::IfcFontStyle(data);
case 465: return new ::Ifc4x2::IfcFontVariant(data);
case 466: return new ::Ifc4x2::IfcFontWeight(data);
case 467: return new ::Ifc4x2::IfcFooting(data);
case 468: return new ::Ifc4x2::IfcFootingType(data);
case 469: return new ::Ifc4x2::IfcFootingTypeEnum(data);
case 470: return new ::Ifc4x2::IfcForceMeasure(data);
case 471: return new ::Ifc4x2::IfcFrequencyMeasure(data);
case 472: return new ::Ifc4x2::IfcFurnishingElement(data);
case 473: return new ::Ifc4x2::IfcFurnishingElementType(data);
case 474: return new ::Ifc4x2::IfcFurniture(data);
case 475: return new ::Ifc4x2::IfcFurnitureType(data);
case 476: return new ::Ifc4x2::IfcFurnitureTypeEnum(data);
case 477: return new ::Ifc4x2::IfcGeographicElement(data);
case 478: return new ::Ifc4x2::IfcGeographicElementType(data);
case 479: return new ::Ifc4x2::IfcGeographicElementTypeEnum(data);
case 480: return new ::Ifc4x2::IfcGeometricCurveSet(data);
case 481: return new ::Ifc4x2::IfcGeometricProjectionEnum(data);
case 482: return new ::Ifc4x2::IfcGeometricRepresentationContext(data);
case 483: return new ::Ifc4x2::IfcGeometricRepresentationItem(data);
case 484: return new ::Ifc4x2::IfcGeometricRepresentationSubContext(data);
case 485: return new ::Ifc4x2::IfcGeometricSet(data);
case 487: return new ::Ifc4x2::IfcGloballyUniqueId(data);
case 488: return new ::Ifc4x2::IfcGlobalOrLocalEnum(data);
case 489: return new ::Ifc4x2::IfcGrid(data);
case 490: return new ::Ifc4x2::IfcGridAxis(data);
case 491: return new ::Ifc4x2::IfcGridPlacement(data);
case 493: return new ::Ifc4x2::IfcGridTypeEnum(data);
case 494: return new ::Ifc4x2::IfcGroup(data);
case 495: return new ::Ifc4x2::IfcHalfSpaceSolid(data);
case 497: return new ::Ifc4x2::IfcHeatExchanger(data);
case 498: return new ::Ifc4x2::IfcHeatExchangerType(data);
case 499: return new ::Ifc4x2::IfcHeatExchangerTypeEnum(data);
case 500: return new ::Ifc4x2::IfcHeatFluxDensityMeasure(data);
case 501: return new ::Ifc4x2::IfcHeatingValueMeasure(data);
case 502: return new ::Ifc4x2::IfcHumidifier(data);
case 503: return new ::Ifc4x2::IfcHumidifierType(data);
case 504: return new ::Ifc4x2::IfcHumidifierTypeEnum(data);
case 505: return new ::Ifc4x2::IfcIdentifier(data);
case 506: return new ::Ifc4x2::IfcIlluminanceMeasure(data);
case 507: return new ::Ifc4x2::IfcImageTexture(data);
case 508: return new ::Ifc4x2::IfcIndexedColourMap(data);
case 509: return new ::Ifc4x2::IfcIndexedPolyCurve(data);
case 510: return new ::Ifc4x2::IfcIndexedPolygonalFace(data);
case 511: return new ::Ifc4x2::IfcIndexedPolygonalFaceWithVoids(data);
case 512: return new ::Ifc4x2::IfcIndexedTextureMap(data);
case 513: return new ::Ifc4x2::IfcIndexedTriangleTextureMap(data);
case 514: return new ::Ifc4x2::IfcInductanceMeasure(data);
case 515: return new ::Ifc4x2::IfcInteger(data);
case 516: return new ::Ifc4x2::IfcIntegerCountRateMeasure(data);
case 517: return new ::Ifc4x2::IfcInterceptor(data);
case 518: return new ::Ifc4x2::IfcInterceptorType(data);
case 519: return new ::Ifc4x2::IfcInterceptorTypeEnum(data);
case 520: return new ::Ifc4x2::IfcInternalOrExternalEnum(data);
case 521: return new ::Ifc4x2::IfcIntersectionCurve(data);
case 522: return new ::Ifc4x2::IfcInventory(data);
case 523: return new ::Ifc4x2::IfcInventoryTypeEnum(data);
case 524: return new ::Ifc4x2::IfcIonConcentrationMeasure(data);
case 525: return new ::Ifc4x2::IfcIrregularTimeSeries(data);
case 526: return new ::Ifc4x2::IfcIrregularTimeSeriesValue(data);
case 527: return new ::Ifc4x2::IfcIShapeProfileDef(data);
case 528: return new ::Ifc4x2::IfcIsothermalMoistureCapacityMeasure(data);
case 529: return new ::Ifc4x2::IfcJunctionBox(data);
case 530: return new ::Ifc4x2::IfcJunctionBoxType(data);
case 531: return new ::Ifc4x2::IfcJunctionBoxTypeEnum(data);
case 532: return new ::Ifc4x2::IfcKinematicViscosityMeasure(data);
case 533: return new ::Ifc4x2::IfcKnotType(data);
case 534: return new ::Ifc4x2::IfcLabel(data);
case 535: return new ::Ifc4x2::IfcLaborResource(data);
case 536: return new ::Ifc4x2::IfcLaborResourceType(data);
case 537: return new ::Ifc4x2::IfcLaborResourceTypeEnum(data);
case 538: return new ::Ifc4x2::IfcLagTime(data);
case 539: return new ::Ifc4x2::IfcLamp(data);
case 540: return new ::Ifc4x2::IfcLampType(data);
case 541: return new ::Ifc4x2::IfcLampTypeEnum(data);
case 542: return new ::Ifc4x2::IfcLanguageId(data);
case 544: return new ::Ifc4x2::IfcLayerSetDirectionEnum(data);
case 545: return new ::Ifc4x2::IfcLengthMeasure(data);
case 546: return new ::Ifc4x2::IfcLibraryInformation(data);
case 547: return new ::Ifc4x2::IfcLibraryReference(data);
case 549: return new ::Ifc4x2::IfcLightDistributionCurveEnum(data);
case 550: return new ::Ifc4x2::IfcLightDistributionData(data);
case 552: return new ::Ifc4x2::IfcLightEmissionSourceEnum(data);
case 553: return new ::Ifc4x2::IfcLightFixture(data);
case 554: return new ::Ifc4x2::IfcLightFixtureType(data);
case 555: return new ::Ifc4x2::IfcLightFixtureTypeEnum(data);
case 556: return new ::Ifc4x2::IfcLightIntensityDistribution(data);
case 557: return new ::Ifc4x2::IfcLightSource(data);
case 558: return new ::Ifc4x2::IfcLightSourceAmbient(data);
case 559: return new ::Ifc4x2::IfcLightSourceDirectional(data);
case 560: return new ::Ifc4x2::IfcLightSourceGoniometric(data);
case 561: return new ::Ifc4x2::IfcLightSourcePositional(data);
case 562: return new ::Ifc4x2::IfcLightSourceSpot(data);
case 563: return new ::Ifc4x2::IfcLine(data);
case 564: return new ::Ifc4x2::IfcLinearForceMeasure(data);
case 565: return new ::Ifc4x2::IfcLinearMomentMeasure(data);
case 566: return new ::Ifc4x2::IfcLinearPlacement(data);
case 567: return new ::Ifc4x2::IfcLinearPositioningElement(data);
case 568: return new ::Ifc4x2::IfcLinearStiffnessMeasure(data);
case 569: return new ::Ifc4x2::IfcLinearVelocityMeasure(data);
case 570: return new ::Ifc4x2::IfcLineIndex(data);
case 571: return new ::Ifc4x2::IfcLineSegment2D(data);
case 572: return new ::Ifc4x2::IfcLoadGroupTypeEnum(data);
case 573: return new ::Ifc4x2::IfcLocalPlacement(data);
case 574: return new ::Ifc4x2::IfcLogical(data);
case 575: return new ::Ifc4x2::IfcLogicalOperatorEnum(data);
case 576: return new ::Ifc4x2::IfcLoop(data);
case 577: return new ::Ifc4x2::IfcLShapeProfileDef(data);
case 578: return new ::Ifc4x2::IfcLuminousFluxMeasure(data);
case 579: return new ::Ifc4x2::IfcLuminousIntensityDistributionMeasure(data);
case 580: return new ::Ifc4x2::IfcLuminousIntensityMeasure(data);
case 581: return new ::Ifc4x2::IfcMagneticFluxDensityMeasure(data);
case 582: return new ::Ifc4x2::IfcMagneticFluxMeasure(data);
case 583: return new ::Ifc4x2::IfcManifoldSolidBrep(data);
case 584: return new ::Ifc4x2::IfcMapConversion(data);
case 585: return new ::Ifc4x2::IfcMappedItem(data);
case 586: return new ::Ifc4x2::IfcMassDensityMeasure(data);
case 587: return new ::Ifc4x2::IfcMassFlowRateMeasure(data);
case 588: return new ::Ifc4x2::IfcMassMeasure(data);
case 589: return new ::Ifc4x2::IfcMassPerLengthMeasure(data);
case 590: return new ::Ifc4x2::IfcMaterial(data);
case 591: return new ::Ifc4x2::IfcMaterialClassificationRelationship(data);
case 592: return new ::Ifc4x2::IfcMaterialConstituent(data);
case 593: return new ::Ifc4x2::IfcMaterialConstituentSet(data);
case 594: return new ::Ifc4x2::IfcMaterialDefinition(data);
case 595: return new ::Ifc4x2::IfcMaterialDefinitionRepresentation(data);
case 596: return new ::Ifc4x2::IfcMaterialLayer(data);
case 597: return new ::Ifc4x2::IfcMaterialLayerSet(data);
case 598: return new ::Ifc4x2::IfcMaterialLayerSetUsage(data);
case 599: return new ::Ifc4x2::IfcMaterialLayerWithOffsets(data);
case 600: return new ::Ifc4x2::IfcMaterialList(data);
case 601: return new ::Ifc4x2::IfcMaterialProfile(data);
case 602: return new ::Ifc4x2::IfcMaterialProfileSet(data);
case 603: return new ::Ifc4x2::IfcMaterialProfileSetUsage(data);
case 604: return new ::Ifc4x2::IfcMaterialProfileSetUsageTapering(data);
case 605: return new ::Ifc4x2::IfcMaterialProfileWithOffsets(data);
case 606: return new ::Ifc4x2::IfcMaterialProperties(data);
case 607: return new ::Ifc4x2::IfcMaterialRelationship(data);
case 609: return new ::Ifc4x2::IfcMaterialUsageDefinition(data);
case 611: return new ::Ifc4x2::IfcMeasureWithUnit(data);
case 612: return new ::Ifc4x2::IfcMechanicalFastener(data);
case 613: return new ::Ifc4x2::IfcMechanicalFastenerType(data);
case 614: return new ::Ifc4x2::IfcMechanicalFastenerTypeEnum(data);
case 615: return new ::Ifc4x2::IfcMedicalDevice(data);
case 616: return new ::Ifc4x2::IfcMedicalDeviceType(data);
case 617: return new ::Ifc4x2::IfcMedicalDeviceTypeEnum(data);
case 618: return new ::Ifc4x2::IfcMember(data);
case 619: return new ::Ifc4x2::IfcMemberStandardCase(data);
case 620: return new ::Ifc4x2::IfcMemberType(data);
case 621: return new ::Ifc4x2::IfcMemberTypeEnum(data);
case 622: return new ::Ifc4x2::IfcMetric(data);
case 624: return new ::Ifc4x2::IfcMirroredProfileDef(data);
case 625: return new ::Ifc4x2::IfcModulusOfElasticityMeasure(data);
case 626: return new ::Ifc4x2::IfcModulusOfLinearSubgradeReactionMeasure(data);
case 627: return new ::Ifc4x2::IfcModulusOfRotationalSubgradeReactionMeasure(data);
case 629: return new ::Ifc4x2::IfcModulusOfSubgradeReactionMeasure(data);
case 632: return new ::Ifc4x2::IfcMoistureDiffusivityMeasure(data);
case 633: return new ::Ifc4x2::IfcMolecularWeightMeasure(data);
case 634: return new ::Ifc4x2::IfcMomentOfInertiaMeasure(data);
case 635: return new ::Ifc4x2::IfcMonetaryMeasure(data);
case 636: return new ::Ifc4x2::IfcMonetaryUnit(data);
case 637: return new ::Ifc4x2::IfcMonthInYearNumber(data);
case 638: return new ::Ifc4x2::IfcMotorConnection(data);
case 639: return new ::Ifc4x2::IfcMotorConnectionType(data);
case 640: return new ::Ifc4x2::IfcMotorConnectionTypeEnum(data);
case 641: return new ::Ifc4x2::IfcNamedUnit(data);
case 642: return new ::Ifc4x2::IfcNonNegativeLengthMeasure(data);
case 643: return new ::Ifc4x2::IfcNormalisedRatioMeasure(data);
case 644: return new ::Ifc4x2::IfcNullStyle(data);
case 645: return new ::Ifc4x2::IfcNumericMeasure(data);
case 646: return new ::Ifc4x2::IfcObject(data);
case 647: return new ::Ifc4x2::IfcObjectDefinition(data);
case 648: return new ::Ifc4x2::IfcObjective(data);
case 649: return new ::Ifc4x2::IfcObjectiveEnum(data);
case 650: return new ::Ifc4x2::IfcObjectPlacement(data);
case 652: return new ::Ifc4x2::IfcObjectTypeEnum(data);
case 653: return new ::Ifc4x2::IfcOccupant(data);
case 654: return new ::Ifc4x2::IfcOccupantTypeEnum(data);
case 655: return new ::Ifc4x2::IfcOffsetCurve(data);
case 656: return new ::Ifc4x2::IfcOffsetCurve2D(data);
case 657: return new ::Ifc4x2::IfcOffsetCurve3D(data);
case 658: return new ::Ifc4x2::IfcOffsetCurveByDistances(data);
case 659: return new ::Ifc4x2::IfcOpeningElement(data);
case 660: return new ::Ifc4x2::IfcOpeningElementTypeEnum(data);
case 661: return new ::Ifc4x2::IfcOpeningStandardCase(data);
case 662: return new ::Ifc4x2::IfcOpenShell(data);
case 663: return new ::Ifc4x2::IfcOrganization(data);
case 664: return new ::Ifc4x2::IfcOrganizationRelationship(data);
case 665: return new ::Ifc4x2::IfcOrientationExpression(data);
case 666: return new ::Ifc4x2::IfcOrientedEdge(data);
case 667: return new ::Ifc4x2::IfcOuterBoundaryCurve(data);
case 668: return new ::Ifc4x2::IfcOutlet(data);
case 669: return new ::Ifc4x2::IfcOutletType(data);
case 670: return new ::Ifc4x2::IfcOutletTypeEnum(data);
case 671: return new ::Ifc4x2::IfcOwnerHistory(data);
case 672: return new ::Ifc4x2::IfcParameterizedProfileDef(data);
case 673: return new ::Ifc4x2::IfcParameterValue(data);
case 674: return new ::Ifc4x2::IfcPath(data);
case 675: return new ::Ifc4x2::IfcPcurve(data);
case 676: return new ::Ifc4x2::IfcPerformanceHistory(data);
case 677: return new ::Ifc4x2::IfcPerformanceHistoryTypeEnum(data);
case 678: return new ::Ifc4x2::IfcPermeableCoveringOperationEnum(data);
case 679: return new ::Ifc4x2::IfcPermeableCoveringProperties(data);
case 680: return new ::Ifc4x2::IfcPermit(data);
case 681: return new ::Ifc4x2::IfcPermitTypeEnum(data);
case 682: return new ::Ifc4x2::IfcPerson(data);
case 683: return new ::Ifc4x2::IfcPersonAndOrganization(data);
case 684: return new ::Ifc4x2::IfcPHMeasure(data);
case 685: return new ::Ifc4x2::IfcPhysicalComplexQuantity(data);
case 686: return new ::Ifc4x2::IfcPhysicalOrVirtualEnum(data);
case 687: return new ::Ifc4x2::IfcPhysicalQuantity(data);
case 688: return new ::Ifc4x2::IfcPhysicalSimpleQuantity(data);
case 689: return new ::Ifc4x2::IfcPile(data);
case 690: return new ::Ifc4x2::IfcPileConstructionEnum(data);
case 691: return new ::Ifc4x2::IfcPileType(data);
case 692: return new ::Ifc4x2::IfcPileTypeEnum(data);
case 693: return new ::Ifc4x2::IfcPipeFitting(data);
case 694: return new ::Ifc4x2::IfcPipeFittingType(data);
case 695: return new ::Ifc4x2::IfcPipeFittingTypeEnum(data);
case 696: return new ::Ifc4x2::IfcPipeSegment(data);
case 697: return new ::Ifc4x2::IfcPipeSegmentType(data);
case 698: return new ::Ifc4x2::IfcPipeSegmentTypeEnum(data);
case 699: return new ::Ifc4x2::IfcPixelTexture(data);
case 700: return new ::Ifc4x2::IfcPlacement(data);
case 701: return new ::Ifc4x2::IfcPlanarBox(data);
case 702: return new ::Ifc4x2::IfcPlanarExtent(data);
case 703: return new ::Ifc4x2::IfcPlanarForceMeasure(data);
case 704: return new ::Ifc4x2::IfcPlane(data);
case 705: return new ::Ifc4x2::IfcPlaneAngleMeasure(data);
case 706: return new ::Ifc4x2::IfcPlate(data);
case 707: return new ::Ifc4x2::IfcPlateStandardCase(data);
case 708: return new ::Ifc4x2::IfcPlateType(data);
case 709: return new ::Ifc4x2::IfcPlateTypeEnum(data);
case 710: return new ::Ifc4x2::IfcPoint(data);
case 711: return new ::Ifc4x2::IfcPointOnCurve(data);
case 712: return new ::Ifc4x2::IfcPointOnSurface(data);
case 714: return new ::Ifc4x2::IfcPolygonalBoundedHalfSpace(data);
case 715: return new ::Ifc4x2::IfcPolygonalFaceSet(data);
case 716: return new ::Ifc4x2::IfcPolyline(data);
case 717: return new ::Ifc4x2::IfcPolyLoop(data);
case 718: return new ::Ifc4x2::IfcPort(data);
case 719: return new ::Ifc4x2::IfcPositioningElement(data);
case 720: return new ::Ifc4x2::IfcPositiveInteger(data);
case 721: return new ::Ifc4x2::IfcPositiveLengthMeasure(data);
case 722: return new ::Ifc4x2::IfcPositivePlaneAngleMeasure(data);
case 723: return new ::Ifc4x2::IfcPositiveRatioMeasure(data);
case 724: return new ::Ifc4x2::IfcPostalAddress(data);
case 725: return new ::Ifc4x2::IfcPowerMeasure(data);
case 726: return new ::Ifc4x2::IfcPreDefinedColour(data);
case 727: return new ::Ifc4x2::IfcPreDefinedCurveFont(data);
case 728: return new ::Ifc4x2::IfcPreDefinedItem(data);
case 729: return new ::Ifc4x2::IfcPreDefinedProperties(data);
case 730: return new ::Ifc4x2::IfcPreDefinedPropertySet(data);
case 731: return new ::Ifc4x2::IfcPreDefinedTextFont(data);
case 732: return new ::Ifc4x2::IfcPreferredSurfaceCurveRepresentation(data);
case 733: return new ::Ifc4x2::IfcPresentableText(data);
case 734: return new ::Ifc4x2::IfcPresentationItem(data);
case 735: return new ::Ifc4x2::IfcPresentationLayerAssignment(data);
case 736: return new ::Ifc4x2::IfcPresentationLayerWithStyle(data);
case 737: return new ::Ifc4x2::IfcPresentationStyle(data);
case 738: return new ::Ifc4x2::IfcPresentationStyleAssignment(data);
case 740: return new ::Ifc4x2::IfcPressureMeasure(data);
case 741: return new ::Ifc4x2::IfcProcedure(data);
case 742: return new ::Ifc4x2::IfcProcedureType(data);
case 743: return new ::Ifc4x2::IfcProcedureTypeEnum(data);
case 744: return new ::Ifc4x2::IfcProcess(data);
case 746: return new ::Ifc4x2::IfcProduct(data);
case 747: return new ::Ifc4x2::IfcProductDefinitionShape(data);
case 748: return new ::Ifc4x2::IfcProductRepresentation(data);
case 751: return new ::Ifc4x2::IfcProfileDef(data);
case 752: return new ::Ifc4x2::IfcProfileProperties(data);
case 753: return new ::Ifc4x2::IfcProfileTypeEnum(data);
case 754: return new ::Ifc4x2::IfcProject(data);
case 755: return new ::Ifc4x2::IfcProjectedCRS(data);
case 756: return new ::Ifc4x2::IfcProjectedOrTrueLengthEnum(data);
case 757: return new ::Ifc4x2::IfcProjectionElement(data);
case 758: return new ::Ifc4x2::IfcProjectionElementTypeEnum(data);
case 759: return new ::Ifc4x2::IfcProjectLibrary(data);
case 760: return new ::Ifc4x2::IfcProjectOrder(data);
case 761: return new ::Ifc4x2::IfcProjectOrderTypeEnum(data);
case 762: return new ::Ifc4x2::IfcProperty(data);
case 763: return new ::Ifc4x2::IfcPropertyAbstraction(data);
case 764: return new ::Ifc4x2::IfcPropertyBoundedValue(data);
case 765: return new ::Ifc4x2::IfcPropertyDefinition(data);
case 766: return new ::Ifc4x2::IfcPropertyDependencyRelationship(data);
case 767: return new ::Ifc4x2::IfcPropertyEnumeratedValue(data);
case 768: return new ::Ifc4x2::IfcPropertyEnumeration(data);
case 769: return new ::Ifc4x2::IfcPropertyListValue(data);
case 770: return new ::Ifc4x2::IfcPropertyReferenceValue(data);
case 771: return new ::Ifc4x2::IfcPropertySet(data);
case 772: return new ::Ifc4x2::IfcPropertySetDefinition(data);
case 774: return new ::Ifc4x2::IfcPropertySetDefinitionSet(data);
case 775: return new ::Ifc4x2::IfcPropertySetTemplate(data);
case 776: return new ::Ifc4x2::IfcPropertySetTemplateTypeEnum(data);
case 777: return new ::Ifc4x2::IfcPropertySingleValue(data);
case 778: return new ::Ifc4x2::IfcPropertyTableValue(data);
case 779: return new ::Ifc4x2::IfcPropertyTemplate(data);
case 780: return new ::Ifc4x2::IfcPropertyTemplateDefinition(data);
case 781: return new ::Ifc4x2::IfcProtectiveDevice(data);
case 782: return new ::Ifc4x2::IfcProtectiveDeviceTrippingUnit(data);
case 783: return new ::Ifc4x2::IfcProtectiveDeviceTrippingUnitType(data);
case 784: return new ::Ifc4x2::IfcProtectiveDeviceTrippingUnitTypeEnum(data);
case 785: return new ::Ifc4x2::IfcProtectiveDeviceType(data);
case 786: return new ::Ifc4x2::IfcProtectiveDeviceTypeEnum(data);
case 787: return new ::Ifc4x2::IfcProxy(data);
case 788: return new ::Ifc4x2::IfcPump(data);
case 789: return new ::Ifc4x2::IfcPumpType(data);
case 790: return new ::Ifc4x2::IfcPumpTypeEnum(data);
case 791: return new ::Ifc4x2::IfcQuantityArea(data);
case 792: return new ::Ifc4x2::IfcQuantityCount(data);
case 793: return new ::Ifc4x2::IfcQuantityLength(data);
case 794: return new ::Ifc4x2::IfcQuantitySet(data);
case 795: return new ::Ifc4x2::IfcQuantityTime(data);
case 796: return new ::Ifc4x2::IfcQuantityVolume(data);
case 797: return new ::Ifc4x2::IfcQuantityWeight(data);
case 798: return new ::Ifc4x2::IfcRadioActivityMeasure(data);
case 799: return new ::Ifc4x2::IfcRailing(data);
case 800: return new ::Ifc4x2::IfcRailingType(data);
case 801: return new ::Ifc4x2::IfcRailingTypeEnum(data);
case 802: return new ::Ifc4x2::IfcRamp(data);
case 803: return new ::Ifc4x2::IfcRampFlight(data);
case 804: return new ::Ifc4x2::IfcRampFlightType(data);
case 805: return new ::Ifc4x2::IfcRampFlightTypeEnum(data);
case 806: return new ::Ifc4x2::IfcRampType(data);
case 807: return new ::Ifc4x2::IfcRampTypeEnum(data);
case 808: return new ::Ifc4x2::IfcRatioMeasure(data);
case 809: return new ::Ifc4x2::IfcRationalBSplineCurveWithKnots(data);
case 810: return new ::Ifc4x2::IfcRationalBSplineSurfaceWithKnots(data);
case 811: return new ::Ifc4x2::IfcReal(data);
case 812: return new ::Ifc4x2::IfcRectangleHollowProfileDef(data);
case 813: return new ::Ifc4x2::IfcRectangleProfileDef(data);
case 814: return new ::Ifc4x2::IfcRectangularPyramid(data);
case 815: return new ::Ifc4x2::IfcRectangularTrimmedSurface(data);
case 816: return new ::Ifc4x2::IfcRecurrencePattern(data);
case 817: return new ::Ifc4x2::IfcRecurrenceTypeEnum(data);
case 818: return new ::Ifc4x2::IfcReference(data);
case 819: return new ::Ifc4x2::IfcReferent(data);
case 820: return new ::Ifc4x2::IfcReferentTypeEnum(data);
case 821: return new ::Ifc4x2::IfcReflectanceMethodEnum(data);
case 822: return new ::Ifc4x2::IfcRegularTimeSeries(data);
case 823: return new ::Ifc4x2::IfcReinforcementBarProperties(data);
case 824: return new ::Ifc4x2::IfcReinforcementDefinitionProperties(data);
case 825: return new ::Ifc4x2::IfcReinforcingBar(data);
case 826: return new ::Ifc4x2::IfcReinforcingBarRoleEnum(data);
case 827: return new ::Ifc4x2::IfcReinforcingBarSurfaceEnum(data);
case 828: return new ::Ifc4x2::IfcReinforcingBarType(data);
case 829: return new ::Ifc4x2::IfcReinforcingBarTypeEnum(data);
case 830: return new ::Ifc4x2::IfcReinforcingElement(data);
case 831: return new ::Ifc4x2::IfcReinforcingElementType(data);
case 832: return new ::Ifc4x2::IfcReinforcingMesh(data);
case 833: return new ::Ifc4x2::IfcReinforcingMeshType(data);
case 834: return new ::Ifc4x2::IfcReinforcingMeshTypeEnum(data);
case 835: return new ::Ifc4x2::IfcRelAggregates(data);
case 836: return new ::Ifc4x2::IfcRelAssigns(data);
case 837: return new ::Ifc4x2::IfcRelAssignsToActor(data);
case 838: return new ::Ifc4x2::IfcRelAssignsToControl(data);
case 839: return new ::Ifc4x2::IfcRelAssignsToGroup(data);
case 840: return new ::Ifc4x2::IfcRelAssignsToGroupByFactor(data);
case 841: return new ::Ifc4x2::IfcRelAssignsToProcess(data);
case 842: return new ::Ifc4x2::IfcRelAssignsToProduct(data);
case 843: return new ::Ifc4x2::IfcRelAssignsToResource(data);
case 844: return new ::Ifc4x2::IfcRelAssociates(data);
case 845: return new ::Ifc4x2::IfcRelAssociatesApproval(data);
case 846: return new ::Ifc4x2::IfcRelAssociatesClassification(data);
case 847: return new ::Ifc4x2::IfcRelAssociatesConstraint(data);
case 848: return new ::Ifc4x2::IfcRelAssociatesDocument(data);
case 849: return new ::Ifc4x2::IfcRelAssociatesLibrary(data);
case 850: return new ::Ifc4x2::IfcRelAssociatesMaterial(data);
case 851: return new ::Ifc4x2::IfcRelationship(data);
case 852: return new ::Ifc4x2::IfcRelConnects(data);
case 853: return new ::Ifc4x2::IfcRelConnectsElements(data);
case 854: return new ::Ifc4x2::IfcRelConnectsPathElements(data);
case 855: return new ::Ifc4x2::IfcRelConnectsPorts(data);
case 856: return new ::Ifc4x2::IfcRelConnectsPortToElement(data);
case 857: return new ::Ifc4x2::IfcRelConnectsStructuralActivity(data);
case 858: return new ::Ifc4x2::IfcRelConnectsStructuralMember(data);
case 859: return new ::Ifc4x2::IfcRelConnectsWithEccentricity(data);
case 860: return new ::Ifc4x2::IfcRelConnectsWithRealizingElements(data);
case 861: return new ::Ifc4x2::IfcRelContainedInSpatialStructure(data);
case 862: return new ::Ifc4x2::IfcRelCoversBldgElements(data);
case 863: return new ::Ifc4x2::IfcRelCoversSpaces(data);
case 864: return new ::Ifc4x2::IfcRelDeclares(data);
case 865: return new ::Ifc4x2::IfcRelDecomposes(data);
case 866: return new ::Ifc4x2::IfcRelDefines(data);
case 867: return new ::Ifc4x2::IfcRelDefinesByObject(data);
case 868: return new ::Ifc4x2::IfcRelDefinesByProperties(data);
case 869: return new ::Ifc4x2::IfcRelDefinesByTemplate(data);
case 870: return new ::Ifc4x2::IfcRelDefinesByType(data);
case 871: return new ::Ifc4x2::IfcRelFillsElement(data);
case 872: return new ::Ifc4x2::IfcRelFlowControlElements(data);
case 873: return new ::Ifc4x2::IfcRelInterferesElements(data);
case 874: return new ::Ifc4x2::IfcRelNests(data);
case 875: return new ::Ifc4x2::IfcRelPositions(data);
case 876: return new ::Ifc4x2::IfcRelProjectsElement(data);
case 877: return new ::Ifc4x2::IfcRelReferencedInSpatialStructure(data);
case 878: return new ::Ifc4x2::IfcRelSequence(data);
case 879: return new ::Ifc4x2::IfcRelServicesBuildings(data);
case 880: return new ::Ifc4x2::IfcRelSpaceBoundary(data);
case 881: return new ::Ifc4x2::IfcRelSpaceBoundary1stLevel(data);
case 882: return new ::Ifc4x2::IfcRelSpaceBoundary2ndLevel(data);
case 883: return new ::Ifc4x2::IfcRelVoidsElement(data);
case 884: return new ::Ifc4x2::IfcReparametrisedCompositeCurveSegment(data);
case 885: return new ::Ifc4x2::IfcRepresentation(data);
case 886: return new ::Ifc4x2::IfcRepresentationContext(data);
case 887: return new ::Ifc4x2::IfcRepresentationItem(data);
case 888: return new ::Ifc4x2::IfcRepresentationMap(data);
case 889: return new ::Ifc4x2::IfcResource(data);
case 890: return new ::Ifc4x2::IfcResourceApprovalRelationship(data);
case 891: return new ::Ifc4x2::IfcResourceConstraintRelationship(data);
case 892: return new ::Ifc4x2::IfcResourceLevelRelationship(data);
case 895: return new ::Ifc4x2::IfcResourceTime(data);
case 896: return new ::Ifc4x2::IfcRevolvedAreaSolid(data);
case 897: return new ::Ifc4x2::IfcRevolvedAreaSolidTapered(data);
case 898: return new ::Ifc4x2::IfcRightCircularCone(data);
case 899: return new ::Ifc4x2::IfcRightCircularCylinder(data);
case 900: return new ::Ifc4x2::IfcRoleEnum(data);
case 901: return new ::Ifc4x2::IfcRoof(data);
case 902: return new ::Ifc4x2::IfcRoofType(data);
case 903: return new ::Ifc4x2::IfcRoofTypeEnum(data);
case 904: return new ::Ifc4x2::IfcRoot(data);
case 905: return new ::Ifc4x2::IfcRotationalFrequencyMeasure(data);
case 906: return new ::Ifc4x2::IfcRotationalMassMeasure(data);
case 907: return new ::Ifc4x2::IfcRotationalStiffnessMeasure(data);
case 909: return new ::Ifc4x2::IfcRoundedRectangleProfileDef(data);
case 910: return new ::Ifc4x2::IfcSanitaryTerminal(data);
case 911: return new ::Ifc4x2::IfcSanitaryTerminalType(data);
case 912: return new ::Ifc4x2::IfcSanitaryTerminalTypeEnum(data);
case 913: return new ::Ifc4x2::IfcSchedulingTime(data);
case 914: return new ::Ifc4x2::IfcSeamCurve(data);
case 915: return new ::Ifc4x2::IfcSectionalAreaIntegralMeasure(data);
case 916: return new ::Ifc4x2::IfcSectionedSolid(data);
case 917: return new ::Ifc4x2::IfcSectionedSolidHorizontal(data);
case 918: return new ::Ifc4x2::IfcSectionedSpine(data);
case 919: return new ::Ifc4x2::IfcSectionModulusMeasure(data);
case 920: return new ::Ifc4x2::IfcSectionProperties(data);
case 921: return new ::Ifc4x2::IfcSectionReinforcementProperties(data);
case 922: return new ::Ifc4x2::IfcSectionTypeEnum(data);
case 924: return new ::Ifc4x2::IfcSensor(data);
case 925: return new ::Ifc4x2::IfcSensorType(data);
case 926: return new ::Ifc4x2::IfcSensorTypeEnum(data);
case 927: return new ::Ifc4x2::IfcSequenceEnum(data);
case 928: return new ::Ifc4x2::IfcShadingDevice(data);
case 929: return new ::Ifc4x2::IfcShadingDeviceType(data);
case 930: return new ::Ifc4x2::IfcShadingDeviceTypeEnum(data);
case 931: return new ::Ifc4x2::IfcShapeAspect(data);
case 932: return new ::Ifc4x2::IfcShapeModel(data);
case 933: return new ::Ifc4x2::IfcShapeRepresentation(data);
case 934: return new ::Ifc4x2::IfcShearModulusMeasure(data);
case 936: return new ::Ifc4x2::IfcShellBasedSurfaceModel(data);
case 937: return new ::Ifc4x2::IfcSimpleProperty(data);
case 938: return new ::Ifc4x2::IfcSimplePropertyTemplate(data);
case 939: return new ::Ifc4x2::IfcSimplePropertyTemplateTypeEnum(data);
case 941: return new ::Ifc4x2::IfcSIPrefix(data);
case 942: return new ::Ifc4x2::IfcSite(data);
case 943: return new ::Ifc4x2::IfcSIUnit(data);
case 944: return new ::Ifc4x2::IfcSIUnitName(data);
case 946: return new ::Ifc4x2::IfcSlab(data);
case 947: return new ::Ifc4x2::IfcSlabElementedCase(data);
case 948: return new ::Ifc4x2::IfcSlabStandardCase(data);
case 949: return new ::Ifc4x2::IfcSlabType(data);
case 950: return new ::Ifc4x2::IfcSlabTypeEnum(data);
case 951: return new ::Ifc4x2::IfcSlippageConnectionCondition(data);
case 952: return new ::Ifc4x2::IfcSolarDevice(data);
case 953: return new ::Ifc4x2::IfcSolarDeviceType(data);
case 954: return new ::Ifc4x2::IfcSolarDeviceTypeEnum(data);
case 955: return new ::Ifc4x2::IfcSolidAngleMeasure(data);
case 956: return new ::Ifc4x2::IfcSolidModel(data);
case 958: return new ::Ifc4x2::IfcSoundPowerLevelMeasure(data);
case 959: return new ::Ifc4x2::IfcSoundPowerMeasure(data);
case 960: return new ::Ifc4x2::IfcSoundPressureLevelMeasure(data);
case 961: return new ::Ifc4x2::IfcSoundPressureMeasure(data);
case 962: return new ::Ifc4x2::IfcSpace(data);
case 964: return new ::Ifc4x2::IfcSpaceHeater(data);
case 965: return new ::Ifc4x2::IfcSpaceHeaterType(data);
case 966: return new ::Ifc4x2::IfcSpaceHeaterTypeEnum(data);
case 967: return new ::Ifc4x2::IfcSpaceType(data);
case 968: return new ::Ifc4x2::IfcSpaceTypeEnum(data);
case 969: return new ::Ifc4x2::IfcSpatialElement(data);
case 970: return new ::Ifc4x2::IfcSpatialElementType(data);
case 971: return new ::Ifc4x2::IfcSpatialStructureElement(data);
case 972: return new ::Ifc4x2::IfcSpatialStructureElementType(data);
case 973: return new ::Ifc4x2::IfcSpatialZone(data);
case 974: return new ::Ifc4x2::IfcSpatialZoneType(data);
case 975: return new ::Ifc4x2::IfcSpatialZoneTypeEnum(data);
case 976: return new ::Ifc4x2::IfcSpecificHeatCapacityMeasure(data);
case 977: return new ::Ifc4x2::IfcSpecularExponent(data);
case 979: return new ::Ifc4x2::IfcSpecularRoughness(data);
case 980: return new ::Ifc4x2::IfcSphere(data);
case 981: return new ::Ifc4x2::IfcSphericalSurface(data);
case 982: return new ::Ifc4x2::IfcStackTerminal(data);
case 983: return new ::Ifc4x2::IfcStackTerminalType(data);
case 984: return new ::Ifc4x2::IfcStackTerminalTypeEnum(data);
case 985: return new ::Ifc4x2::IfcStair(data);
case 986: return new ::Ifc4x2::IfcStairFlight(data);
case 987: return new ::Ifc4x2::IfcStairFlightType(data);
case 988: return new ::Ifc4x2::IfcStairFlightTypeEnum(data);
case 989: return new ::Ifc4x2::IfcStairType(data);
case 990: return new ::Ifc4x2::IfcStairTypeEnum(data);
case 991: return new ::Ifc4x2::IfcStateEnum(data);
case 992: return new ::Ifc4x2::IfcStructuralAction(data);
case 993: return new ::Ifc4x2::IfcStructuralActivity(data);
case 995: return new ::Ifc4x2::IfcStructuralAnalysisModel(data);
case 996: return new ::Ifc4x2::IfcStructuralConnection(data);
case 997: return new ::Ifc4x2::IfcStructuralConnectionCondition(data);
case 998: return new ::Ifc4x2::IfcStructuralCurveAction(data);
case 999: return new ::Ifc4x2::IfcStructuralCurveActivityTypeEnum(data);
case 1000: return new ::Ifc4x2::IfcStructuralCurveConnection(data);
case 1001: return new ::Ifc4x2::IfcStructuralCurveMember(data);
case 1002: return new ::Ifc4x2::IfcStructuralCurveMemberTypeEnum(data);
case 1003: return new ::Ifc4x2::IfcStructuralCurveMemberVarying(data);
case 1004: return new ::Ifc4x2::IfcStructuralCurveReaction(data);
case 1005: return new ::Ifc4x2::IfcStructuralItem(data);
case 1006: return new ::Ifc4x2::IfcStructuralLinearAction(data);
case 1007: return new ::Ifc4x2::IfcStructuralLoad(data);
case 1008: return new ::Ifc4x2::IfcStructuralLoadCase(data);
case 1009: return new ::Ifc4x2::IfcStructuralLoadConfiguration(data);
case 1010: return new ::Ifc4x2::IfcStructuralLoadGroup(data);
case 1011: return new ::Ifc4x2::IfcStructuralLoadLinearForce(data);
case 1012: return new ::Ifc4x2::IfcStructuralLoadOrResult(data);
case 1013: return new ::Ifc4x2::IfcStructuralLoadPlanarForce(data);
case 1014: return new ::Ifc4x2::IfcStructuralLoadSingleDisplacement(data);
case 1015: return new ::Ifc4x2::IfcStructuralLoadSingleDisplacementDistortion(data);
case 1016: return new ::Ifc4x2::IfcStructuralLoadSingleForce(data);
case 1017: return new ::Ifc4x2::IfcStructuralLoadSingleForceWarping(data);
case 1018: return new ::Ifc4x2::IfcStructuralLoadStatic(data);
case 1019: return new ::Ifc4x2::IfcStructuralLoadTemperature(data);
case 1020: return new ::Ifc4x2::IfcStructuralMember(data);
case 1021: return new ::Ifc4x2::IfcStructuralPlanarAction(data);
case 1022: return new ::Ifc4x2::IfcStructuralPointAction(data);
case 1023: return new ::Ifc4x2::IfcStructuralPointConnection(data);
case 1024: return new ::Ifc4x2::IfcStructuralPointReaction(data);
case 1025: return new ::Ifc4x2::IfcStructuralReaction(data);
case 1026: return new ::Ifc4x2::IfcStructuralResultGroup(data);
case 1027: return new ::Ifc4x2::IfcStructuralSurfaceAction(data);
case 1028: return new ::Ifc4x2::IfcStructuralSurfaceActivityTypeEnum(data);
case 1029: return new ::Ifc4x2::IfcStructuralSurfaceConnection(data);
case 1030: return new ::Ifc4x2::IfcStructuralSurfaceMember(data);
case 1031: return new ::Ifc4x2::IfcStructuralSurfaceMemberTypeEnum(data);
case 1032: return new ::Ifc4x2::IfcStructuralSurfaceMemberVarying(data);
case 1033: return new ::Ifc4x2::IfcStructuralSurfaceReaction(data);
case 1035: return new ::Ifc4x2::IfcStyledItem(data);
case 1036: return new ::Ifc4x2::IfcStyledRepresentation(data);
case 1037: return new ::Ifc4x2::IfcStyleModel(data);
case 1038: return new ::Ifc4x2::IfcSubContractResource(data);
case 1039: return new ::Ifc4x2::IfcSubContractResourceType(data);
case 1040: return new ::Ifc4x2::IfcSubContractResourceTypeEnum(data);
case 1041: return new ::Ifc4x2::IfcSubedge(data);
case 1042: return new ::Ifc4x2::IfcSurface(data);
case 1043: return new ::Ifc4x2::IfcSurfaceCurve(data);
case 1044: return new ::Ifc4x2::IfcSurfaceCurveSweptAreaSolid(data);
case 1045: return new ::Ifc4x2::IfcSurfaceFeature(data);
case 1046: return new ::Ifc4x2::IfcSurfaceFeatureTypeEnum(data);
case 1047: return new ::Ifc4x2::IfcSurfaceOfLinearExtrusion(data);
case 1048: return new ::Ifc4x2::IfcSurfaceOfRevolution(data);
case 1050: return new ::Ifc4x2::IfcSurfaceReinforcementArea(data);
case 1051: return new ::Ifc4x2::IfcSurfaceSide(data);
case 1052: return new ::Ifc4x2::IfcSurfaceStyle(data);
case 1054: return new ::Ifc4x2::IfcSurfaceStyleLighting(data);
case 1055: return new ::Ifc4x2::IfcSurfaceStyleRefraction(data);
case 1056: return new ::Ifc4x2::IfcSurfaceStyleRendering(data);
case 1057: return new ::Ifc4x2::IfcSurfaceStyleShading(data);
case 1058: return new ::Ifc4x2::IfcSurfaceStyleWithTextures(data);
case 1059: return new ::Ifc4x2::IfcSurfaceTexture(data);
case 1060: return new ::Ifc4x2::IfcSweptAreaSolid(data);
case 1061: return new ::Ifc4x2::IfcSweptDiskSolid(data);
case 1062: return new ::Ifc4x2::IfcSweptDiskSolidPolygonal(data);
case 1063: return new ::Ifc4x2::IfcSweptSurface(data);
case 1064: return new ::Ifc4x2::IfcSwitchingDevice(data);
case 1065: return new ::Ifc4x2::IfcSwitchingDeviceType(data);
case 1066: return new ::Ifc4x2::IfcSwitchingDeviceTypeEnum(data);
case 1067: return new ::Ifc4x2::IfcSystem(data);
case 1068: return new ::Ifc4x2::IfcSystemFurnitureElement(data);
case 1069: return new ::Ifc4x2::IfcSystemFurnitureElementType(data);
case 1070: return new ::Ifc4x2::IfcSystemFurnitureElementTypeEnum(data);
case 1071: return new ::Ifc4x2::IfcTable(data);
case 1072: return new ::Ifc4x2::IfcTableColumn(data);
case 1073: return new ::Ifc4x2::IfcTableRow(data);
case 1074: return new ::Ifc4x2::IfcTank(data);
case 1075: return new ::Ifc4x2::IfcTankType(data);
case 1076: return new ::Ifc4x2::IfcTankTypeEnum(data);
case 1077: return new ::Ifc4x2::IfcTask(data);
case 1078: return new ::Ifc4x2::IfcTaskDurationEnum(data);
case 1079: return new ::Ifc4x2::IfcTaskTime(data);
case 1080: return new ::Ifc4x2::IfcTaskTimeRecurring(data);
case 1081: return new ::Ifc4x2::IfcTaskType(data);
case 1082: return new ::Ifc4x2::IfcTaskTypeEnum(data);
case 1083: return new ::Ifc4x2::IfcTelecomAddress(data);
case 1084: return new ::Ifc4x2::IfcTemperatureGradientMeasure(data);
case 1085: return new ::Ifc4x2::IfcTemperatureRateOfChangeMeasure(data);
case 1086: return new ::Ifc4x2::IfcTendon(data);
case 1087: return new ::Ifc4x2::IfcTendonAnchor(data);
case 1088: return new ::Ifc4x2::IfcTendonAnchorType(data);
case 1089: return new ::Ifc4x2::IfcTendonAnchorTypeEnum(data);
case 1090: return new ::Ifc4x2::IfcTendonConduit(data);
case 1091: return new ::Ifc4x2::IfcTendonConduitType(data);
case 1092: return new ::Ifc4x2::IfcTendonConduitTypeEnum(data);
case 1093: return new ::Ifc4x2::IfcTendonType(data);
case 1094: return new ::Ifc4x2::IfcTendonTypeEnum(data);
case 1095: return new ::Ifc4x2::IfcTessellatedFaceSet(data);
case 1096: return new ::Ifc4x2::IfcTessellatedItem(data);
case 1097: return new ::Ifc4x2::IfcText(data);
case 1098: return new ::Ifc4x2::IfcTextAlignment(data);
case 1099: return new ::Ifc4x2::IfcTextDecoration(data);
case 1100: return new ::Ifc4x2::IfcTextFontName(data);
case 1102: return new ::Ifc4x2::IfcTextLiteral(data);
case 1103: return new ::Ifc4x2::IfcTextLiteralWithExtent(data);
case 1104: return new ::Ifc4x2::IfcTextPath(data);
case 1105: return new ::Ifc4x2::IfcTextStyle(data);
case 1106: return new ::Ifc4x2::IfcTextStyleFontModel(data);
case 1107: return new ::Ifc4x2::IfcTextStyleForDefinedFont(data);
case 1108: return new ::Ifc4x2::IfcTextStyleTextModel(data);
case 1109: return new ::Ifc4x2::IfcTextTransformation(data);
case 1110: return new ::Ifc4x2::IfcTextureCoordinate(data);
case 1111: return new ::Ifc4x2::IfcTextureCoordinateGenerator(data);
case 1112: return new ::Ifc4x2::IfcTextureMap(data);
case 1113: return new ::Ifc4x2::IfcTextureVertex(data);
case 1114: return new ::Ifc4x2::IfcTextureVertexList(data);
case 1115: return new ::Ifc4x2::IfcThermalAdmittanceMeasure(data);
case 1116: return new ::Ifc4x2::IfcThermalConductivityMeasure(data);
case 1117: return new ::Ifc4x2::IfcThermalExpansionCoefficientMeasure(data);
case 1118: return new ::Ifc4x2::IfcThermalResistanceMeasure(data);
case 1119: return new ::Ifc4x2::IfcThermalTransmittanceMeasure(data);
case 1120: return new ::Ifc4x2::IfcThermodynamicTemperatureMeasure(data);
case 1121: return new ::Ifc4x2::IfcTime(data);
case 1122: return new ::Ifc4x2::IfcTimeMeasure(data);
case 1124: return new ::Ifc4x2::IfcTimePeriod(data);
case 1125: return new ::Ifc4x2::IfcTimeSeries(data);
case 1126: return new ::Ifc4x2::IfcTimeSeriesDataTypeEnum(data);
case 1127: return new ::Ifc4x2::IfcTimeSeriesValue(data);
case 1128: return new ::Ifc4x2::IfcTimeStamp(data);
case 1129: return new ::Ifc4x2::IfcTopologicalRepresentationItem(data);
case 1130: return new ::Ifc4x2::IfcTopologyRepresentation(data);
case 1131: return new ::Ifc4x2::IfcToroidalSurface(data);
case 1132: return new ::Ifc4x2::IfcTorqueMeasure(data);
case 1133: return new ::Ifc4x2::IfcTransformer(data);
case 1134: return new ::Ifc4x2::IfcTransformerType(data);
case 1135: return new ::Ifc4x2::IfcTransformerTypeEnum(data);
case 1136: return new ::Ifc4x2::IfcTransitionCode(data);
case 1137: return new ::Ifc4x2::IfcTransitionCurveSegment2D(data);
case 1138: return new ::Ifc4x2::IfcTransitionCurveType(data);
case 1140: return new ::Ifc4x2::IfcTransportElement(data);
case 1141: return new ::Ifc4x2::IfcTransportElementType(data);
case 1142: return new ::Ifc4x2::IfcTransportElementTypeEnum(data);
case 1143: return new ::Ifc4x2::IfcTrapeziumProfileDef(data);
case 1144: return new ::Ifc4x2::IfcTriangulatedFaceSet(data);
case 1145: return new ::Ifc4x2::IfcTriangulatedIrregularNetwork(data);
case 1146: return new ::Ifc4x2::IfcTrimmedCurve(data);
case 1147: return new ::Ifc4x2::IfcTrimmingPreference(data);
case 1149: return new ::Ifc4x2::IfcTShapeProfileDef(data);
case 1150: return new ::Ifc4x2::IfcTubeBundle(data);
case 1151: return new ::Ifc4x2::IfcTubeBundleType(data);
case 1152: return new ::Ifc4x2::IfcTubeBundleTypeEnum(data);
case 1153: return new ::Ifc4x2::IfcTypeObject(data);
case 1154: return new ::Ifc4x2::IfcTypeProcess(data);
case 1155: return new ::Ifc4x2::IfcTypeProduct(data);
case 1156: return new ::Ifc4x2::IfcTypeResource(data);
case 1158: return new ::Ifc4x2::IfcUnitaryControlElement(data);
case 1159: return new ::Ifc4x2::IfcUnitaryControlElementType(data);
case 1160: return new ::Ifc4x2::IfcUnitaryControlElementTypeEnum(data);
case 1161: return new ::Ifc4x2::IfcUnitaryEquipment(data);
case 1162: return new ::Ifc4x2::IfcUnitaryEquipmentType(data);
case 1163: return new ::Ifc4x2::IfcUnitaryEquipmentTypeEnum(data);
case 1164: return new ::Ifc4x2::IfcUnitAssignment(data);
case 1165: return new ::Ifc4x2::IfcUnitEnum(data);
case 1166: return new ::Ifc4x2::IfcURIReference(data);
case 1167: return new ::Ifc4x2::IfcUShapeProfileDef(data);
case 1169: return new ::Ifc4x2::IfcValve(data);
case 1170: return new ::Ifc4x2::IfcValveType(data);
case 1171: return new ::Ifc4x2::IfcValveTypeEnum(data);
case 1172: return new ::Ifc4x2::IfcVaporPermeabilityMeasure(data);
case 1173: return new ::Ifc4x2::IfcVector(data);
case 1175: return new ::Ifc4x2::IfcVertex(data);
case 1176: return new ::Ifc4x2::IfcVertexLoop(data);
case 1177: return new ::Ifc4x2::IfcVertexPoint(data);
case 1178: return new ::Ifc4x2::IfcVibrationDamper(data);
case 1179: return new ::Ifc4x2::IfcVibrationDamperType(data);
case 1180: return new ::Ifc4x2::IfcVibrationDamperTypeEnum(data);
case 1181: return new ::Ifc4x2::IfcVibrationIsolator(data);
case 1182: return new ::Ifc4x2::IfcVibrationIsolatorType(data);
case 1183: return new ::Ifc4x2::IfcVibrationIsolatorTypeEnum(data);
case 1184: return new ::Ifc4x2::IfcVirtualElement(data);
case 1185: return new ::Ifc4x2::IfcVirtualGridIntersection(data);
case 1186: return new ::Ifc4x2::IfcVoidingFeature(data);
case 1187: return new ::Ifc4x2::IfcVoidingFeatureTypeEnum(data);
case 1188: return new ::Ifc4x2::IfcVolumeMeasure(data);
case 1189: return new ::Ifc4x2::IfcVolumetricFlowRateMeasure(data);
case 1190: return new ::Ifc4x2::IfcWall(data);
case 1191: return new ::Ifc4x2::IfcWallElementedCase(data);
case 1192: return new ::Ifc4x2::IfcWallStandardCase(data);
case 1193: return new ::Ifc4x2::IfcWallType(data);
case 1194: return new ::Ifc4x2::IfcWallTypeEnum(data);
case 1195: return new ::Ifc4x2::IfcWarpingConstantMeasure(data);
case 1196: return new ::Ifc4x2::IfcWarpingMomentMeasure(data);
case 1198: return new ::Ifc4x2::IfcWasteTerminal(data);
case 1199: return new ::Ifc4x2::IfcWasteTerminalType(data);
case 1200: return new ::Ifc4x2::IfcWasteTerminalTypeEnum(data);
case 1201: return new ::Ifc4x2::IfcWindow(data);
case 1202: return new ::Ifc4x2::IfcWindowLiningProperties(data);
case 1203: return new ::Ifc4x2::IfcWindowPanelOperationEnum(data);
case 1204: return new ::Ifc4x2::IfcWindowPanelPositionEnum(data);
case 1205: return new ::Ifc4x2::IfcWindowPanelProperties(data);
case 1206: return new ::Ifc4x2::IfcWindowStandardCase(data);
case 1207: return new ::Ifc4x2::IfcWindowStyle(data);
case 1208: return new ::Ifc4x2::IfcWindowStyleConstructionEnum(data);
case 1209: return new ::Ifc4x2::IfcWindowStyleOperationEnum(data);
case 1210: return new ::Ifc4x2::IfcWindowType(data);
case 1211: return new ::Ifc4x2::IfcWindowTypeEnum(data);
case 1212: return new ::Ifc4x2::IfcWindowTypePartitioningEnum(data);
case 1213: return new ::Ifc4x2::IfcWorkCalendar(data);
case 1214: return new ::Ifc4x2::IfcWorkCalendarTypeEnum(data);
case 1215: return new ::Ifc4x2::IfcWorkControl(data);
case 1216: return new ::Ifc4x2::IfcWorkPlan(data);
case 1217: return new ::Ifc4x2::IfcWorkPlanTypeEnum(data);
case 1218: return new ::Ifc4x2::IfcWorkSchedule(data);
case 1219: return new ::Ifc4x2::IfcWorkScheduleTypeEnum(data);
case 1220: return new ::Ifc4x2::IfcWorkTime(data);
case 1221: return new ::Ifc4x2::IfcZone(data);
case 1222: return new ::Ifc4x2::IfcZShapeProfileDef(data);
default: throw IfcParse::IfcException(data->type()->name() + " cannot be instantiated");
}
}
};
#if defined(__clang__)
__attribute__((optnone))
#elif defined(__GNUC__) || defined(__GNUG__)
#pragma GCC push_options
#pragma GCC optimize ("O0")
#elif defined(_MSC_VER)
#pragma optimize("", off)
#endif
IfcParse::schema_definition* IFC4X2_populate_schema() {
IFC4X2_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type));
IFC4X2_IfcAccelerationMeasure_type = new type_declaration("IfcAccelerationMeasure", 1, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(7);
items.push_back("EMAIL");
items.push_back("FAX");
items.push_back("NOTDEFINED");
items.push_back("PHONE");
items.push_back("POST");
items.push_back("USERDEFINED");
items.push_back("VERBAL");
IFC4X2_IfcActionRequestTypeEnum_type = new enumeration_type("IfcActionRequestTypeEnum", 3, items);
}
{
std::vector items; items.reserve(27);
items.push_back("BRAKES");
items.push_back("BUOYANCY");
items.push_back("COMPLETION_G1");
items.push_back("CREEP");
items.push_back("CURRENT");
items.push_back("DEAD_LOAD_G");
items.push_back("EARTHQUAKE_E");
items.push_back("ERECTION");
items.push_back("FIRE");
items.push_back("ICE");
items.push_back("IMPACT");
items.push_back("IMPULSE");
items.push_back("LACK_OF_FIT");
items.push_back("LIVE_LOAD_Q");
items.push_back("NOTDEFINED");
items.push_back("PRESTRESSING_P");
items.push_back("PROPPING");
items.push_back("RAIN");
items.push_back("SETTLEMENT_U");
items.push_back("SHRINKAGE");
items.push_back("SNOW_S");
items.push_back("SYSTEM_IMPERFECTION");
items.push_back("TEMPERATURE_T");
items.push_back("TRANSPORT");
items.push_back("USERDEFINED");
items.push_back("WAVE");
items.push_back("WIND_W");
IFC4X2_IfcActionSourceTypeEnum_type = new enumeration_type("IfcActionSourceTypeEnum", 4, items);
}
{
std::vector items; items.reserve(5);
items.push_back("EXTRAORDINARY_A");
items.push_back("NOTDEFINED");
items.push_back("PERMANENT_G");
items.push_back("USERDEFINED");
items.push_back("VARIABLE_Q");
IFC4X2_IfcActionTypeEnum_type = new enumeration_type("IfcActionTypeEnum", 5, items);
}
{
std::vector items; items.reserve(7);
items.push_back("ELECTRICACTUATOR");
items.push_back("HANDOPERATEDACTUATOR");
items.push_back("HYDRAULICACTUATOR");
items.push_back("NOTDEFINED");
items.push_back("PNEUMATICACTUATOR");
items.push_back("THERMOSTATICACTUATOR");
items.push_back("USERDEFINED");
IFC4X2_IfcActuatorTypeEnum_type = new enumeration_type("IfcActuatorTypeEnum", 11, items);
}
{
std::vector items; items.reserve(5);
items.push_back("DISTRIBUTIONPOINT");
items.push_back("HOME");
items.push_back("OFFICE");
items.push_back("SITE");
items.push_back("USERDEFINED");
IFC4X2_IfcAddressTypeEnum_type = new enumeration_type("IfcAddressTypeEnum", 13, items);
}
{
std::vector items; items.reserve(5);
items.push_back("CONSTANTFLOW");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("VARIABLEFLOWPRESSUREDEPENDANT");
items.push_back("VARIABLEFLOWPRESSUREINDEPENDANT");
IFC4X2_IfcAirTerminalBoxTypeEnum_type = new enumeration_type("IfcAirTerminalBoxTypeEnum", 20, items);
}
{
std::vector items; items.reserve(6);
items.push_back("DIFFUSER");
items.push_back("GRILLE");
items.push_back("LOUVRE");
items.push_back("NOTDEFINED");
items.push_back("REGISTER");
items.push_back("USERDEFINED");
IFC4X2_IfcAirTerminalTypeEnum_type = new enumeration_type("IfcAirTerminalTypeEnum", 22, items);
}
{
std::vector items; items.reserve(11);
items.push_back("FIXEDPLATECOUNTERFLOWEXCHANGER");
items.push_back("FIXEDPLATECROSSFLOWEXCHANGER");
items.push_back("FIXEDPLATEPARALLELFLOWEXCHANGER");
items.push_back("HEATPIPE");
items.push_back("NOTDEFINED");
items.push_back("ROTARYWHEEL");
items.push_back("RUNAROUNDCOILLOOP");
items.push_back("THERMOSIPHONCOILTYPEHEATEXCHANGERS");
items.push_back("THERMOSIPHONSEALEDTUBEHEATEXCHANGERS");
items.push_back("TWINTOWERENTHALPYRECOVERYLOOPS");
items.push_back("USERDEFINED");
IFC4X2_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items);
}
{
std::vector items; items.reserve(8);
items.push_back("BELL");
items.push_back("BREAKGLASSBUTTON");
items.push_back("LIGHT");
items.push_back("MANUALPULLBOX");
items.push_back("NOTDEFINED");
items.push_back("SIREN");
items.push_back("USERDEFINED");
items.push_back("WHISTLE");
IFC4X2_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 39, items);
}
IFC4X2_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 40, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("IN_PLANE_LOADING_2D");
items.push_back("LOADING_3D");
items.push_back("NOTDEFINED");
items.push_back("OUT_PLANE_LOADING_2D");
items.push_back("USERDEFINED");
IFC4X2_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 41, items);
}
{
std::vector items; items.reserve(6);
items.push_back("FIRST_ORDER_THEORY");
items.push_back("FULL_NONLINEAR_THEORY");
items.push_back("NOTDEFINED");
items.push_back("SECOND_ORDER_THEORY");
items.push_back("THIRD_ORDER_THEORY");
items.push_back("USERDEFINED");
IFC4X2_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 42, items);
}
IFC4X2_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 43, new simple_type(simple_type::real_type));
IFC4X2_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 55, new simple_type(simple_type::real_type));
IFC4X2_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 56, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("ADD");
items.push_back("DIVIDE");
items.push_back("MULTIPLY");
items.push_back("SUBTRACT");
IFC4X2_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 57, items);
}
{
std::vector items; items.reserve(3);
items.push_back("FACTORY");
items.push_back("NOTDEFINED");
items.push_back("SITE");
IFC4X2_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 58, items);
}
{
std::vector items; items.reserve(13);
items.push_back("AMPLIFIER");
items.push_back("CAMERA");
items.push_back("DISPLAY");
items.push_back("MICROPHONE");
items.push_back("NOTDEFINED");
items.push_back("PLAYER");
items.push_back("PROJECTOR");
items.push_back("RECEIVER");
items.push_back("SPEAKER");
items.push_back("SWITCHER");
items.push_back("TELEPHONE");
items.push_back("TUNER");
items.push_back("USERDEFINED");
IFC4X2_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 63, items);
}
{
std::vector items; items.reserve(6);
items.push_back("CIRCULAR_ARC");
items.push_back("ELLIPTIC_ARC");
items.push_back("HYPERBOLIC_ARC");
items.push_back("PARABOLIC_ARC");
items.push_back("POLYLINE_FORM");
items.push_back("UNSPECIFIED");
IFC4X2_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 105, items);
}
{
std::vector items; items.reserve(11);
items.push_back("CONICAL_SURF");
items.push_back("CYLINDRICAL_SURF");
items.push_back("GENERALISED_CONE");
items.push_back("PLANE_SURF");
items.push_back("QUADRIC_SURF");
items.push_back("RULED_SURF");
items.push_back("SPHERICAL_SURF");
items.push_back("SURF_OF_LINEAR_EXTRUSION");
items.push_back("SURF_OF_REVOLUTION");
items.push_back("TOROIDAL_SURF");
items.push_back("UNSPECIFIED");
IFC4X2_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 108, items);
}
{
std::vector items; items.reserve(14);
items.push_back("BEAM");
items.push_back("CORNICE");
items.push_back("DIAPHRAGM");
items.push_back("EDGEBEAM");
items.push_back("GIRDER_SEGMENT");
items.push_back("HATSTONE");
items.push_back("HOLLOWCORE");
items.push_back("JOIST");
items.push_back("LINTEL");
items.push_back("NOTDEFINED");
items.push_back("PIERCAP");
items.push_back("SPANDREL");
items.push_back("T_BEAM");
items.push_back("USERDEFINED");
IFC4X2_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 71, items);
}
{
std::vector items; items.reserve(5);
items.push_back("FIXED_MOVEMENT");
items.push_back("FREE_MOVEMENT");
items.push_back("GUIDED_LONGITUDINAL");
items.push_back("GUIDED_TRANSVERSAL");
items.push_back("NOTDEFINED");
IFC4X2_IfcBearingTypeDisplacementEnum_type = new enumeration_type("IfcBearingTypeDisplacementEnum", 74, items);
}
{
std::vector items; items.reserve(10);
items.push_back("CYLINDRICAL");
items.push_back("DISK");
items.push_back("ELASTOMERIC");
items.push_back("GUIDE");
items.push_back("NOTDEFINED");
items.push_back("POT");
items.push_back("ROCKER");
items.push_back("ROLLER");
items.push_back("SPHERICAL");
items.push_back("USERDEFINED");
IFC4X2_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 75, items);
}
{
std::vector items; items.reserve(10);
items.push_back("EQUALTO");
items.push_back("GREATERTHAN");
items.push_back("GREATERTHANOREQUALTO");
items.push_back("INCLUDEDIN");
items.push_back("INCLUDES");
items.push_back("LESSTHAN");
items.push_back("LESSTHANOREQUALTO");
items.push_back("NOTEQUALTO");
items.push_back("NOTINCLUDEDIN");
items.push_back("NOTINCLUDES");
IFC4X2_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 76, items);
}
IFC4X2_IfcBinary_type = new type_declaration("IfcBinary", 78, new simple_type(simple_type::binary_type));
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("STEAM");
items.push_back("USERDEFINED");
items.push_back("WATER");
IFC4X2_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 83, items);
}
IFC4X2_IfcBoolean_type = new type_declaration("IfcBoolean", 84, new simple_type(simple_type::boolean_type));
{
std::vector items; items.reserve(3);
items.push_back("DIFFERENCE");
items.push_back("INTERSECTION");
items.push_back("UNION");
IFC4X2_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 87, items);
}
{
std::vector items; items.reserve(12);
items.push_back("ABUTMENT");
items.push_back("DECK");
items.push_back("DECK_SEGMENT");
items.push_back("FOUNDATION");
items.push_back("NOTDEFINED");
items.push_back("PIER");
items.push_back("PIER_SEGMENT");
items.push_back("PYLON");
items.push_back("SUBSTRUCTURE");
items.push_back("SUPERSTRUCTURE");
items.push_back("SURFACESTRUCTURE");
items.push_back("USERDEFINED");
IFC4X2_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 102, items);
}
{
std::vector items; items.reserve(10);
items.push_back("ARCHED");
items.push_back("CABLE_STAYED");
items.push_back("CANTILEVER");
items.push_back("CULVERT");
items.push_back("FRAMEWORK");
items.push_back("GIRDER");
items.push_back("NOTDEFINED");
items.push_back("SUSPENSION");
items.push_back("TRUSS");
items.push_back("USERDEFINED");
IFC4X2_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 103, items);
}
{
std::vector items; items.reserve(5);
items.push_back("APRON");
items.push_back("INSULATION");
items.push_back("NOTDEFINED");
items.push_back("PRECASTPANEL");
items.push_back("USERDEFINED");
IFC4X2_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 114, items);
}
{
std::vector items; items.reserve(7);
items.push_back("COMPLEX");
items.push_back("ELEMENT");
items.push_back("NOTDEFINED");
items.push_back("PARTIAL");
items.push_back("PROVISIONFORSPACE");
items.push_back("PROVISIONFORVOID");
items.push_back("USERDEFINED");
IFC4X2_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 117, items);
}
{
std::vector items; items.reserve(10);
items.push_back("FENESTRATION");
items.push_back("FOUNDATION");
items.push_back("LOADBEARING");
items.push_back("NOTDEFINED");
items.push_back("OUTERSHELL");
items.push_back("PRESTRESSING");
items.push_back("REINFORCING");
items.push_back("SHADING");
items.push_back("TRANSPORT");
items.push_back("USERDEFINED");
IFC4X2_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 121, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 124, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BEND");
items.push_back("CROSS");
items.push_back("NOTDEFINED");
items.push_back("REDUCER");
items.push_back("TEE");
items.push_back("USERDEFINED");
IFC4X2_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 127, items);
}
{
std::vector items; items.reserve(6);
items.push_back("CABLELADDERSEGMENT");
items.push_back("CABLETRAYSEGMENT");
items.push_back("CABLETRUNKINGSEGMENT");
items.push_back("CONDUITSEGMENT");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 130, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CONNECTOR");
items.push_back("ENTRY");
items.push_back("EXIT");
items.push_back("JUNCTION");
items.push_back("NOTDEFINED");
items.push_back("TRANSITION");
items.push_back("USERDEFINED");
IFC4X2_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 133, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BUSBARSEGMENT");
items.push_back("CABLESEGMENT");
items.push_back("CONDUCTORSEGMENT");
items.push_back("CORESEGMENT");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 136, items);
}
{
std::vector items; items.reserve(4);
items.push_back("CAISSON");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("WELL");
IFC4X2_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 139, items);
}
IFC4X2_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 140, new simple_type(simple_type::integer_type));
{
std::vector items; items.reserve(5);
items.push_back("ADDED");
items.push_back("DELETED");
items.push_back("MODIFIED");
items.push_back("NOCHANGE");
items.push_back("NOTDEFINED");
IFC4X2_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 151, items);
}
{
std::vector items; items.reserve(5);
items.push_back("AIRCOOLED");
items.push_back("HEATRECOVERY");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("WATERCOOLED");
IFC4X2_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 154, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 157, items);
}
{
std::vector items; items.reserve(9);
items.push_back("DXCOOLINGCOIL");
items.push_back("ELECTRICHEATINGCOIL");
items.push_back("GASHEATINGCOIL");
items.push_back("HYDRONICCOIL");
items.push_back("NOTDEFINED");
items.push_back("STEAMHEATINGCOIL");
items.push_back("USERDEFINED");
items.push_back("WATERCOOLINGCOIL");
items.push_back("WATERHEATINGCOIL");
IFC4X2_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 171, items);
}
{
std::vector items; items.reserve(7);
items.push_back("COLUMN");
items.push_back("NOTDEFINED");
items.push_back("PIERSTEM");
items.push_back("PIERSTEM_SEGMENT");
items.push_back("PILASTER");
items.push_back("STANDCOLUMN");
items.push_back("USERDEFINED");
IFC4X2_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 180, items);
}
{
std::vector items; items.reserve(14);
items.push_back("ANTENNA");
items.push_back("COMPUTER");
items.push_back("FAX");
items.push_back("GATEWAY");
items.push_back("MODEM");
items.push_back("NETWORKAPPLIANCE");
items.push_back("NETWORKBRIDGE");
items.push_back("NETWORKHUB");
items.push_back("NOTDEFINED");
items.push_back("PRINTER");
items.push_back("REPEATER");
items.push_back("ROUTER");
items.push_back("SCANNER");
items.push_back("USERDEFINED");
IFC4X2_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 183, items);
}
IFC4X2_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 184, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type)));
{
std::vector items; items.reserve(2);
items.push_back("P_COMPLEX");
items.push_back("Q_COMPLEX");
IFC4X2_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 187, items);
}
IFC4X2_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 192, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type)));
{
std::vector items; items.reserve(17);
items.push_back("BOOSTER");
items.push_back("DYNAMIC");
items.push_back("HERMETIC");
items.push_back("NOTDEFINED");
items.push_back("OPENTYPE");
items.push_back("RECIPROCATING");
items.push_back("ROLLINGPISTON");
items.push_back("ROTARY");
items.push_back("ROTARYVANE");
items.push_back("SCROLL");
items.push_back("SEMIHERMETIC");
items.push_back("SINGLESCREW");
items.push_back("SINGLESTAGE");
items.push_back("TROCHOIDAL");
items.push_back("TWINSCREW");
items.push_back("USERDEFINED");
items.push_back("WELDEDSHELLHERMETIC");
IFC4X2_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 195, items);
}
{
std::vector items; items.reserve(9);
items.push_back("AIRCOOLED");
items.push_back("EVAPORATIVECOOLED");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("WATERCOOLED");
items.push_back("WATERCOOLEDBRAZEDPLATE");
items.push_back("WATERCOOLEDSHELLCOIL");
items.push_back("WATERCOOLEDSHELLTUBE");
items.push_back("WATERCOOLEDTUBEINTUBE");
IFC4X2_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 198, items);
}
{
std::vector items; items.reserve(4);
items.push_back("ATEND");
items.push_back("ATPATH");
items.push_back("ATSTART");
items.push_back("NOTDEFINED");
IFC4X2_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 206, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ADVISORY");
items.push_back("HARD");
items.push_back("NOTDEFINED");
items.push_back("SOFT");
items.push_back("USERDEFINED");
IFC4X2_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 209, items);
}
{
std::vector items; items.reserve(10);
items.push_back("DEMOLISHING");
items.push_back("EARTHMOVING");
items.push_back("ERECTING");
items.push_back("HEATING");
items.push_back("LIGHTING");
items.push_back("NOTDEFINED");
items.push_back("PAVING");
items.push_back("PUMPING");
items.push_back("TRANSPORTING");
items.push_back("USERDEFINED");
IFC4X2_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 212, items);
}
{
std::vector items; items.reserve(11);
items.push_back("AGGREGATES");
items.push_back("CONCRETE");
items.push_back("DRYWALL");
items.push_back("FUEL");
items.push_back("GYPSUM");
items.push_back("MASONRY");
items.push_back("METAL");
items.push_back("NOTDEFINED");
items.push_back("PLASTIC");
items.push_back("USERDEFINED");
items.push_back("WOOD");
IFC4X2_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 215, items);
}
{
std::vector items; items.reserve(4);
items.push_back("ASSEMBLY");
items.push_back("FORMWORK");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 218, items);
}
IFC4X2_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 222, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(7);
items.push_back("FLOATING");
items.push_back("MULTIPOSITION");
items.push_back("NOTDEFINED");
items.push_back("PROGRAMMABLE");
items.push_back("PROPORTIONAL");
items.push_back("TWOPOSITION");
items.push_back("USERDEFINED");
IFC4X2_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 227, items);
}
{
std::vector items; items.reserve(4);
items.push_back("ACTIVE");
items.push_back("NOTDEFINED");
items.push_back("PASSIVE");
items.push_back("USERDEFINED");
IFC4X2_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 232, items);
}
{
std::vector items; items.reserve(5);
items.push_back("MECHANICALFORCEDDRAFT");
items.push_back("MECHANICALINDUCEDDRAFT");
items.push_back("NATURALDRAFT");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 235, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 240, items);
}
{
std::vector items; items.reserve(9);
items.push_back("BUDGET");
items.push_back("COSTPLAN");
items.push_back("ESTIMATE");
items.push_back("NOTDEFINED");
items.push_back("PRICEDBILLOFQUANTITIES");
items.push_back("SCHEDULEOFRATES");
items.push_back("TENDER");
items.push_back("UNPRICEDBILLOFQUANTITIES");
items.push_back("USERDEFINED");
IFC4X2_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 242, items);
}
IFC4X2_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 244, new simple_type(simple_type::number_type));
{
std::vector items; items.reserve(13);
items.push_back("CEILING");
items.push_back("CLADDING");
items.push_back("COPING");
items.push_back("FLOORING");
items.push_back("INSULATION");
items.push_back("MEMBRANE");
items.push_back("MOLDING");
items.push_back("NOTDEFINED");
items.push_back("ROOFING");
items.push_back("SKIRTINGBOARD");
items.push_back("SLEEVING");
items.push_back("USERDEFINED");
items.push_back("WRAPPING");
IFC4X2_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 247, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("OFFICE");
items.push_back("SITE");
items.push_back("USERDEFINED");
IFC4X2_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 250, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 258, items);
}
IFC4X2_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 259, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("LINEAR");
items.push_back("LOG_LINEAR");
items.push_back("LOG_LOG");
items.push_back("NOTDEFINED");
IFC4X2_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 264, items);
}
{
std::vector items; items.reserve(13);
items.push_back("BACKDRAFTDAMPER");
items.push_back("BALANCINGDAMPER");
items.push_back("BLASTDAMPER");
items.push_back("CONTROLDAMPER");
items.push_back("FIREDAMPER");
items.push_back("FIRESMOKEDAMPER");
items.push_back("FUMEHOODEXHAUST");
items.push_back("GRAVITYDAMPER");
items.push_back("GRAVITYRELIEFDAMPER");
items.push_back("NOTDEFINED");
items.push_back("RELIEFDAMPER");
items.push_back("SMOKEDAMPER");
items.push_back("USERDEFINED");
IFC4X2_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 276, items);
}
{
std::vector items; items.reserve(5);
items.push_back("MEASURED");
items.push_back("NOTDEFINED");
items.push_back("PREDICTED");
items.push_back("SIMULATED");
items.push_back("USERDEFINED");
IFC4X2_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 277, items);
}
IFC4X2_IfcDate_type = new type_declaration("IfcDate", 278, new simple_type(simple_type::string_type));
IFC4X2_IfcDateTime_type = new type_declaration("IfcDateTime", 279, new simple_type(simple_type::string_type));
IFC4X2_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 280, new simple_type(simple_type::integer_type));
IFC4X2_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 281, new simple_type(simple_type::integer_type));
{
std::vector items; items.reserve(53);
items.push_back("ACCELERATIONUNIT");
items.push_back("ANGULARVELOCITYUNIT");
items.push_back("AREADENSITYUNIT");
items.push_back("COMPOUNDPLANEANGLEUNIT");
items.push_back("CURVATUREUNIT");
items.push_back("DYNAMICVISCOSITYUNIT");
items.push_back("HEATFLUXDENSITYUNIT");
items.push_back("HEATINGVALUEUNIT");
items.push_back("INTEGERCOUNTRATEUNIT");
items.push_back("IONCONCENTRATIONUNIT");
items.push_back("ISOTHERMALMOISTURECAPACITYUNIT");
items.push_back("KINEMATICVISCOSITYUNIT");
items.push_back("LINEARFORCEUNIT");
items.push_back("LINEARMOMENTUNIT");
items.push_back("LINEARSTIFFNESSUNIT");
items.push_back("LINEARVELOCITYUNIT");
items.push_back("LUMINOUSINTENSITYDISTRIBUTIONUNIT");
items.push_back("MASSDENSITYUNIT");
items.push_back("MASSFLOWRATEUNIT");
items.push_back("MASSPERLENGTHUNIT");
items.push_back("MODULUSOFELASTICITYUNIT");
items.push_back("MODULUSOFLINEARSUBGRADEREACTIONUNIT");
items.push_back("MODULUSOFROTATIONALSUBGRADEREACTIONUNIT");
items.push_back("MODULUSOFSUBGRADEREACTIONUNIT");
items.push_back("MOISTUREDIFFUSIVITYUNIT");
items.push_back("MOLECULARWEIGHTUNIT");
items.push_back("MOMENTOFINERTIAUNIT");
items.push_back("PHUNIT");
items.push_back("PLANARFORCEUNIT");
items.push_back("ROTATIONALFREQUENCYUNIT");
items.push_back("ROTATIONALMASSUNIT");
items.push_back("ROTATIONALSTIFFNESSUNIT");
items.push_back("SECTIONAREAINTEGRALUNIT");
items.push_back("SECTIONMODULUSUNIT");
items.push_back("SHEARMODULUSUNIT");
items.push_back("SOUNDPOWERLEVELUNIT");
items.push_back("SOUNDPOWERUNIT");
items.push_back("SOUNDPRESSURELEVELUNIT");
items.push_back("SOUNDPRESSUREUNIT");
items.push_back("SPECIFICHEATCAPACITYUNIT");
items.push_back("TEMPERATUREGRADIENTUNIT");
items.push_back("TEMPERATURERATEOFCHANGEUNIT");
items.push_back("THERMALADMITTANCEUNIT");
items.push_back("THERMALCONDUCTANCEUNIT");
items.push_back("THERMALEXPANSIONCOEFFICIENTUNIT");
items.push_back("THERMALRESISTANCEUNIT");
items.push_back("THERMALTRANSMITTANCEUNIT");
items.push_back("TORQUEUNIT");
items.push_back("USERDEFINED");
items.push_back("VAPORPERMEABILITYUNIT");
items.push_back("VOLUMETRICFLOWRATEUNIT");
items.push_back("WARPINGCONSTANTUNIT");
items.push_back("WARPINGMOMENTUNIT");
IFC4X2_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 289, items);
}
IFC4X2_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 290, new simple_type(simple_type::string_type));
IFC4X2_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 292, new simple_type(simple_type::integer_type));
{
std::vector items; items.reserve(2);
items.push_back("NEGATIVE");
items.push_back("POSITIVE");
IFC4X2_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 294, items);
}
{
std::vector items; items.reserve(6);
items.push_back("ANCHORPLATE");
items.push_back("BRACKET");
items.push_back("EXPANSION_JOINT_DEVICE");
items.push_back("NOTDEFINED");
items.push_back("SHOE");
items.push_back("USERDEFINED");
IFC4X2_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 297, items);
}
{
std::vector items; items.reserve(10);
items.push_back("FORMEDDUCT");
items.push_back("INSPECTIONCHAMBER");
items.push_back("INSPECTIONPIT");
items.push_back("MANHOLE");
items.push_back("METERCHAMBER");
items.push_back("NOTDEFINED");
items.push_back("SUMP");
items.push_back("TRENCH");
items.push_back("USERDEFINED");
items.push_back("VALVECHAMBER");
IFC4X2_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 301, items);
}
{
std::vector items; items.reserve(6);
items.push_back("CABLE");
items.push_back("CABLECARRIER");
items.push_back("DUCT");
items.push_back("NOTDEFINED");
items.push_back("PIPE");
items.push_back("USERDEFINED");
IFC4X2_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 310, items);
}
{
std::vector items; items.reserve(44);
items.push_back("AIRCONDITIONING");
items.push_back("AUDIOVISUAL");
items.push_back("CHEMICAL");
items.push_back("CHILLEDWATER");
items.push_back("COMMUNICATION");
items.push_back("COMPRESSEDAIR");
items.push_back("CONDENSERWATER");
items.push_back("CONTROL");
items.push_back("CONVEYING");
items.push_back("DATA");
items.push_back("DISPOSAL");
items.push_back("DOMESTICCOLDWATER");
items.push_back("DOMESTICHOTWATER");
items.push_back("DRAINAGE");
items.push_back("EARTHING");
items.push_back("ELECTRICAL");
items.push_back("ELECTROACOUSTIC");
items.push_back("EXHAUST");
items.push_back("FIREPROTECTION");
items.push_back("FUEL");
items.push_back("GAS");
items.push_back("HAZARDOUS");
items.push_back("HEATING");
items.push_back("LIGHTING");
items.push_back("LIGHTNINGPROTECTION");
items.push_back("MUNICIPALSOLIDWASTE");
items.push_back("NOTDEFINED");
items.push_back("OIL");
items.push_back("OPERATIONAL");
items.push_back("POWERGENERATION");
items.push_back("RAINWATER");
items.push_back("REFRIGERATION");
items.push_back("SECURITY");
items.push_back("SEWAGE");
items.push_back("SIGNAL");
items.push_back("STORMWATER");
items.push_back("TELEPHONE");
items.push_back("TV");
items.push_back("USERDEFINED");
items.push_back("VACUUM");
items.push_back("VENT");
items.push_back("VENTILATION");
items.push_back("WASTEWATER");
items.push_back("WATERSUPPLY");
IFC4X2_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 312, items);
}
{
std::vector items; items.reserve(6);
items.push_back("CONFIDENTIAL");
items.push_back("NOTDEFINED");
items.push_back("PERSONAL");
items.push_back("PUBLIC");
items.push_back("RESTRICTED");
items.push_back("USERDEFINED");
IFC4X2_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 313, items);
}
{
std::vector items; items.reserve(5);
items.push_back("DRAFT");
items.push_back("FINAL");
items.push_back("FINALDRAFT");
items.push_back("NOTDEFINED");
items.push_back("REVISION");
IFC4X2_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 318, items);
}
{
std::vector items; items.reserve(9);
items.push_back("DOUBLE_ACTING");
items.push_back("FIXEDPANEL");
items.push_back("FOLDING");
items.push_back("NOTDEFINED");
items.push_back("REVOLVING");
items.push_back("ROLLINGUP");
items.push_back("SLIDING");
items.push_back("SWINGING");
items.push_back("USERDEFINED");
IFC4X2_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 321, items);
}
{
std::vector items; items.reserve(4);
items.push_back("LEFT");
items.push_back("MIDDLE");
items.push_back("NOTDEFINED");
items.push_back("RIGHT");
IFC4X2_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 322, items);
}
{
std::vector items; items.reserve(9);
items.push_back("ALUMINIUM");
items.push_back("ALUMINIUM_PLASTIC");
items.push_back("ALUMINIUM_WOOD");
items.push_back("HIGH_GRADE_STEEL");
items.push_back("NOTDEFINED");
items.push_back("PLASTIC");
items.push_back("STEEL");
items.push_back("USERDEFINED");
items.push_back("WOOD");
IFC4X2_IfcDoorStyleConstructionEnum_type = new enumeration_type("IfcDoorStyleConstructionEnum", 326, items);
}
{
std::vector items; items.reserve(18);
items.push_back("DOUBLE_DOOR_DOUBLE_SWING");
items.push_back("DOUBLE_DOOR_FOLDING");
items.push_back("DOUBLE_DOOR_SINGLE_SWING");
items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT");
items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT");
items.push_back("DOUBLE_DOOR_SLIDING");
items.push_back("DOUBLE_SWING_LEFT");
items.push_back("DOUBLE_SWING_RIGHT");
items.push_back("FOLDING_TO_LEFT");
items.push_back("FOLDING_TO_RIGHT");
items.push_back("NOTDEFINED");
items.push_back("REVOLVING");
items.push_back("ROLLINGUP");
items.push_back("SINGLE_SWING_LEFT");
items.push_back("SINGLE_SWING_RIGHT");
items.push_back("SLIDING_TO_LEFT");
items.push_back("SLIDING_TO_RIGHT");
items.push_back("USERDEFINED");
IFC4X2_IfcDoorStyleOperationEnum_type = new enumeration_type("IfcDoorStyleOperationEnum", 327, items);
}
{
std::vector items; items.reserve(5);
items.push_back("DOOR");
items.push_back("GATE");
items.push_back("NOTDEFINED");
items.push_back("TRAPDOOR");
items.push_back("USERDEFINED");
IFC4X2_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 329, items);
}
{
std::vector items; items.reserve(20);
items.push_back("DOUBLE_DOOR_DOUBLE_SWING");
items.push_back("DOUBLE_DOOR_FOLDING");
items.push_back("DOUBLE_DOOR_SINGLE_SWING");
items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT");
items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT");
items.push_back("DOUBLE_DOOR_SLIDING");
items.push_back("DOUBLE_SWING_LEFT");
items.push_back("DOUBLE_SWING_RIGHT");
items.push_back("FOLDING_TO_LEFT");
items.push_back("FOLDING_TO_RIGHT");
items.push_back("NOTDEFINED");
items.push_back("REVOLVING");
items.push_back("ROLLINGUP");
items.push_back("SINGLE_SWING_LEFT");
items.push_back("SINGLE_SWING_RIGHT");
items.push_back("SLIDING_TO_LEFT");
items.push_back("SLIDING_TO_RIGHT");
items.push_back("SWING_FIXED_LEFT");
items.push_back("SWING_FIXED_RIGHT");
items.push_back("USERDEFINED");
IFC4X2_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 330, items);
}
IFC4X2_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 331, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(9);
items.push_back("BEND");
items.push_back("CONNECTOR");
items.push_back("ENTRY");
items.push_back("EXIT");
items.push_back("JUNCTION");
items.push_back("NOTDEFINED");
items.push_back("OBSTRUCTION");
items.push_back("TRANSITION");
items.push_back("USERDEFINED");
IFC4X2_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 336, items);
}
{
std::vector items; items.reserve(4);
items.push_back("FLEXIBLESEGMENT");
items.push_back("NOTDEFINED");
items.push_back("RIGIDSEGMENT");
items.push_back("USERDEFINED");
IFC4X2_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 339, items);
}
{
std::vector items; items.reserve(5);
items.push_back("FLATOVAL");
items.push_back("NOTDEFINED");
items.push_back("RECTANGULAR");
items.push_back("ROUND");
items.push_back("USERDEFINED");
IFC4X2_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 342, items);
}
IFC4X2_IfcDuration_type = new type_declaration("IfcDuration", 343, new simple_type(simple_type::string_type));
IFC4X2_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 344, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(18);
items.push_back("DISHWASHER");
items.push_back("ELECTRICCOOKER");
items.push_back("FREESTANDINGELECTRICHEATER");
items.push_back("FREESTANDINGFAN");
items.push_back("FREESTANDINGWATERCOOLER");
items.push_back("FREESTANDINGWATERHEATER");
items.push_back("FREEZER");
items.push_back("FRIDGE_FREEZER");
items.push_back("HANDDRYER");
items.push_back("KITCHENMACHINE");
items.push_back("MICROWAVE");
items.push_back("NOTDEFINED");
items.push_back("PHOTOCOPIER");
items.push_back("REFRIGERATOR");
items.push_back("TUMBLEDRYER");
items.push_back("USERDEFINED");
items.push_back("VENDINGMACHINE");
items.push_back("WASHINGMACHINE");
IFC4X2_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 350, items);
}
IFC4X2_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 351, new simple_type(simple_type::real_type));
IFC4X2_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 352, new simple_type(simple_type::real_type));
IFC4X2_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 353, new simple_type(simple_type::real_type));
IFC4X2_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 354, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(6);
items.push_back("CONSUMERUNIT");
items.push_back("DISTRIBUTIONBOARD");
items.push_back("MOTORCONTROLCENTRE");
items.push_back("NOTDEFINED");
items.push_back("SWITCHBOARD");
items.push_back("USERDEFINED");
IFC4X2_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 357, items);
}
{
std::vector items; items.reserve(7);
items.push_back("BATTERY");
items.push_back("CAPACITORBANK");
items.push_back("HARMONICFILTER");
items.push_back("INDUCTORBANK");
items.push_back("NOTDEFINED");
items.push_back("UPS");
items.push_back("USERDEFINED");
IFC4X2_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 360, items);
}
{
std::vector items; items.reserve(5);
items.push_back("CHP");
items.push_back("ENGINEGENERATOR");
items.push_back("NOTDEFINED");
items.push_back("STANDALONE");
items.push_back("USERDEFINED");
IFC4X2_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 363, items);
}
{
std::vector items; items.reserve(7);
items.push_back("DC");
items.push_back("INDUCTION");
items.push_back("NOTDEFINED");
items.push_back("POLYPHASE");
items.push_back("RELUCTANCESYNCHRONOUS");
items.push_back("SYNCHRONOUS");
items.push_back("USERDEFINED");
IFC4X2_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 366, items);
}
IFC4X2_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 367, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("NOTDEFINED");
items.push_back("RELAY");
items.push_back("TIMECLOCK");
items.push_back("TIMEDELAY");
items.push_back("USERDEFINED");
IFC4X2_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 370, items);
}
IFC4X2_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 371, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(16);
items.push_back("ABUTMENT");
items.push_back("ACCESSORY_ASSEMBLY");
items.push_back("ARCH");
items.push_back("BEAM_GRID");
items.push_back("BRACED_FRAME");
items.push_back("CROSS_BRACING");
items.push_back("DECK");
items.push_back("GIRDER");
items.push_back("NOTDEFINED");
items.push_back("PIER");
items.push_back("PYLON");
items.push_back("REINFORCEMENT_UNIT");
items.push_back("RIGID_FRAME");
items.push_back("SLAB_FIELD");
items.push_back("TRUSS");
items.push_back("USERDEFINED");
IFC4X2_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 376, items);
}
{
std::vector items; items.reserve(3);
items.push_back("COMPLEX");
items.push_back("ELEMENT");
items.push_back("PARTIAL");
IFC4X2_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 379, items);
}
IFC4X2_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 386, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("EXTERNALCOMBUSTION");
items.push_back("INTERNALCOMBUSTION");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 389, items);
}
{
std::vector items; items.reserve(11);
items.push_back("DIRECTEVAPORATIVEAIRWASHER");
items.push_back("DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER");
items.push_back("DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER");
items.push_back("DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER");
items.push_back("DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER");
items.push_back("INDIRECTDIRECTCOMBINATION");
items.push_back("INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER");
items.push_back("INDIRECTEVAPORATIVEPACKAGEAIRCOOLER");
items.push_back("INDIRECTEVAPORATIVEWETCOIL");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 392, items);
}
{
std::vector items; items.reserve(8);
items.push_back("DIRECTEXPANSION");
items.push_back("DIRECTEXPANSIONBRAZEDPLATE");
items.push_back("DIRECTEXPANSIONSHELLANDTUBE");
items.push_back("DIRECTEXPANSIONTUBEINTUBE");
items.push_back("FLOODEDSHELLANDTUBE");
items.push_back("NOTDEFINED");
items.push_back("SHELLANDCOIL");
items.push_back("USERDEFINED");
IFC4X2_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 395, items);
}
{
std::vector items; items.reserve(6);
items.push_back("EVENTCOMPLEX");
items.push_back("EVENTMESSAGE");
items.push_back("EVENTRULE");
items.push_back("EVENTTIME");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 398, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ENDEVENT");
items.push_back("INTERMEDIATEEVENT");
items.push_back("NOTDEFINED");
items.push_back("STARTEVENT");
items.push_back("USERDEFINED");
IFC4X2_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 400, items);
}
{
std::vector items; items.reserve(6);
items.push_back("EXTERNAL");
items.push_back("EXTERNAL_EARTH");
items.push_back("EXTERNAL_FIRE");
items.push_back("EXTERNAL_WATER");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 409, items);
}
{
std::vector items; items.reserve(9);
items.push_back("CENTRIFUGALAIRFOIL");
items.push_back("CENTRIFUGALBACKWARDINCLINEDCURVED");
items.push_back("CENTRIFUGALFORWARDCURVED");
items.push_back("CENTRIFUGALRADIAL");
items.push_back("NOTDEFINED");
items.push_back("PROPELLORAXIAL");
items.push_back("TUBEAXIAL");
items.push_back("USERDEFINED");
items.push_back("VANEAXIAL");
IFC4X2_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 425, items);
}
{
std::vector items; items.reserve(5);
items.push_back("GLUE");
items.push_back("MORTAR");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("WELD");
IFC4X2_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 428, items);
}
{
std::vector items; items.reserve(8);
items.push_back("AIRPARTICLEFILTER");
items.push_back("COMPRESSEDAIRFILTER");
items.push_back("NOTDEFINED");
items.push_back("ODORFILTER");
items.push_back("OILFILTER");
items.push_back("STRAINER");
items.push_back("USERDEFINED");
items.push_back("WATERFILTER");
IFC4X2_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 438, items);
}
{
std::vector items; items.reserve(7);
items.push_back("BREECHINGINLET");
items.push_back("FIREHYDRANT");
items.push_back("HOSEREEL");
items.push_back("NOTDEFINED");
items.push_back("SPRINKLER");
items.push_back("SPRINKLERDEFLECTOR");
items.push_back("USERDEFINED");
IFC4X2_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 441, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("SINK");
items.push_back("SOURCE");
items.push_back("SOURCEANDSINK");
IFC4X2_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 445, items);
}
{
std::vector items; items.reserve(10);
items.push_back("AMMETER");
items.push_back("FREQUENCYMETER");
items.push_back("NOTDEFINED");
items.push_back("PHASEANGLEMETER");
items.push_back("POWERFACTORMETER");
items.push_back("PRESSUREGAUGE");
items.push_back("THERMOMETER");
items.push_back("USERDEFINED");
items.push_back("VOLTMETER_PEAK");
items.push_back("VOLTMETER_RMS");
IFC4X2_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 450, items);
}
{
std::vector items; items.reserve(6);
items.push_back("ENERGYMETER");
items.push_back("GASMETER");
items.push_back("NOTDEFINED");
items.push_back("OILMETER");
items.push_back("USERDEFINED");
items.push_back("WATERMETER");
IFC4X2_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 453, items);
}
IFC4X2_IfcFontStyle_type = new type_declaration("IfcFontStyle", 464, new simple_type(simple_type::string_type));
IFC4X2_IfcFontVariant_type = new type_declaration("IfcFontVariant", 465, new simple_type(simple_type::string_type));
IFC4X2_IfcFontWeight_type = new type_declaration("IfcFontWeight", 466, new simple_type(simple_type::string_type));
{
std::vector items; items.reserve(7);
items.push_back("CAISSON_FOUNDATION");
items.push_back("FOOTING_BEAM");
items.push_back("NOTDEFINED");
items.push_back("PAD_FOOTING");
items.push_back("PILE_CAP");
items.push_back("STRIP_FOOTING");
items.push_back("USERDEFINED");
IFC4X2_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 469, items);
}
IFC4X2_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 470, new simple_type(simple_type::real_type));
IFC4X2_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 471, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(9);
items.push_back("BED");
items.push_back("CHAIR");
items.push_back("DESK");
items.push_back("FILECABINET");
items.push_back("NOTDEFINED");
items.push_back("SHELF");
items.push_back("SOFA");
items.push_back("TABLE");
items.push_back("USERDEFINED");
IFC4X2_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 476, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("SOIL_BORING_POINT");
items.push_back("TERRAIN");
items.push_back("USERDEFINED");
IFC4X2_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 479, items);
}
{
std::vector items; items.reserve(9);
items.push_back("ELEVATION_VIEW");
items.push_back("GRAPH_VIEW");
items.push_back("MODEL_VIEW");
items.push_back("NOTDEFINED");
items.push_back("PLAN_VIEW");
items.push_back("REFLECTED_PLAN_VIEW");
items.push_back("SECTION_VIEW");
items.push_back("SKETCH_VIEW");
items.push_back("USERDEFINED");
IFC4X2_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 481, items);
}
{
std::vector items; items.reserve(2);
items.push_back("GLOBAL_COORDS");
items.push_back("LOCAL_COORDS");
IFC4X2_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 488, items);
}
IFC4X2_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 487, new simple_type(simple_type::string_type));
{
std::vector items; items.reserve(6);
items.push_back("IRREGULAR");
items.push_back("NOTDEFINED");
items.push_back("RADIAL");
items.push_back("RECTANGULAR");
items.push_back("TRIANGULAR");
items.push_back("USERDEFINED");
IFC4X2_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 493, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("PLATE");
items.push_back("SHELLANDTUBE");
items.push_back("USERDEFINED");
IFC4X2_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 499, items);
}
IFC4X2_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 500, new simple_type(simple_type::real_type));
IFC4X2_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 501, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(15);
items.push_back("ADIABATICAIRWASHER");
items.push_back("ADIABATICATOMIZING");
items.push_back("ADIABATICCOMPRESSEDAIRNOZZLE");
items.push_back("ADIABATICPAN");
items.push_back("ADIABATICRIGIDMEDIA");
items.push_back("ADIABATICULTRASONIC");
items.push_back("ADIABATICWETTEDELEMENT");
items.push_back("ASSISTEDBUTANE");
items.push_back("ASSISTEDELECTRIC");
items.push_back("ASSISTEDNATURALGAS");
items.push_back("ASSISTEDPROPANE");
items.push_back("ASSISTEDSTEAM");
items.push_back("NOTDEFINED");
items.push_back("STEAMINJECTION");
items.push_back("USERDEFINED");
IFC4X2_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 504, items);
}
IFC4X2_IfcIdentifier_type = new type_declaration("IfcIdentifier", 505, new simple_type(simple_type::string_type));
IFC4X2_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 506, new simple_type(simple_type::real_type));
IFC4X2_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 514, new simple_type(simple_type::real_type));
IFC4X2_IfcInteger_type = new type_declaration("IfcInteger", 515, new simple_type(simple_type::integer_type));
IFC4X2_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 516, new simple_type(simple_type::integer_type));
{
std::vector items; items.reserve(6);
items.push_back("CYCLONIC");
items.push_back("GREASE");
items.push_back("NOTDEFINED");
items.push_back("OIL");
items.push_back("PETROL");
items.push_back("USERDEFINED");
IFC4X2_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 519, items);
}
{
std::vector items; items.reserve(6);
items.push_back("EXTERNAL");
items.push_back("EXTERNAL_EARTH");
items.push_back("EXTERNAL_FIRE");
items.push_back("EXTERNAL_WATER");
items.push_back("INTERNAL");
items.push_back("NOTDEFINED");
IFC4X2_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 520, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ASSETINVENTORY");
items.push_back("FURNITUREINVENTORY");
items.push_back("NOTDEFINED");
items.push_back("SPACEINVENTORY");
items.push_back("USERDEFINED");
IFC4X2_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 523, items);
}
IFC4X2_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 524, new simple_type(simple_type::real_type));
IFC4X2_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 528, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("DATA");
items.push_back("NOTDEFINED");
items.push_back("POWER");
items.push_back("USERDEFINED");
IFC4X2_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 531, items);
}
IFC4X2_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 532, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("PIECEWISE_BEZIER_KNOTS");
items.push_back("QUASI_UNIFORM_KNOTS");
items.push_back("UNIFORM_KNOTS");
items.push_back("UNSPECIFIED");
IFC4X2_IfcKnotType_type = new enumeration_type("IfcKnotType", 533, items);
}
IFC4X2_IfcLabel_type = new type_declaration("IfcLabel", 534, new simple_type(simple_type::string_type));
{
std::vector items; items.reserve(21);
items.push_back("ADMINISTRATION");
items.push_back("CARPENTRY");
items.push_back("CLEANING");
items.push_back("CONCRETE");
items.push_back("DRYWALL");
items.push_back("ELECTRIC");
items.push_back("FINISHING");
items.push_back("FLOORING");
items.push_back("GENERAL");
items.push_back("HVAC");
items.push_back("LANDSCAPING");
items.push_back("MASONRY");
items.push_back("NOTDEFINED");
items.push_back("PAINTING");
items.push_back("PAVING");
items.push_back("PLUMBING");
items.push_back("ROOFING");
items.push_back("SITEGRADING");
items.push_back("STEELWORK");
items.push_back("SURVEYING");
items.push_back("USERDEFINED");
IFC4X2_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 537, items);
}
{
std::vector items; items.reserve(11);
items.push_back("COMPACTFLUORESCENT");
items.push_back("FLUORESCENT");
items.push_back("HALOGEN");
items.push_back("HIGHPRESSUREMERCURY");
items.push_back("HIGHPRESSURESODIUM");
items.push_back("LED");
items.push_back("METALHALIDE");
items.push_back("NOTDEFINED");
items.push_back("OLED");
items.push_back("TUNGSTENFILAMENT");
items.push_back("USERDEFINED");
IFC4X2_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 541, items);
}
IFC4X2_IfcLanguageId_type = new type_declaration("IfcLanguageId", 542, new named_type(IFC4X2_IfcIdentifier_type));
{
std::vector items; items.reserve(3);
items.push_back("AXIS1");
items.push_back("AXIS2");
items.push_back("AXIS3");
IFC4X2_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 544, items);
}
IFC4X2_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 545, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("TYPE_A");
items.push_back("TYPE_B");
items.push_back("TYPE_C");
IFC4X2_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 549, items);
}
{
std::vector items; items.reserve(11);
items.push_back("COMPACTFLUORESCENT");
items.push_back("FLUORESCENT");
items.push_back("HIGHPRESSUREMERCURY");
items.push_back("HIGHPRESSURESODIUM");
items.push_back("LIGHTEMITTINGDIODE");
items.push_back("LOWPRESSURESODIUM");
items.push_back("LOWVOLTAGEHALOGEN");
items.push_back("MAINVOLTAGEHALOGEN");
items.push_back("METALHALIDE");
items.push_back("NOTDEFINED");
items.push_back("TUNGSTENFILAMENT");
IFC4X2_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 552, items);
}
{
std::vector items; items.reserve(5);
items.push_back("DIRECTIONSOURCE");
items.push_back("NOTDEFINED");
items.push_back("POINTSOURCE");
items.push_back("SECURITYLIGHTING");
items.push_back("USERDEFINED");
IFC4X2_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 555, items);
}
IFC4X2_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 564, new simple_type(simple_type::real_type));
IFC4X2_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 565, new simple_type(simple_type::real_type));
IFC4X2_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 568, new simple_type(simple_type::real_type));
IFC4X2_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 569, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("LOAD_CASE");
items.push_back("LOAD_COMBINATION");
items.push_back("LOAD_GROUP");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 572, items);
}
IFC4X2_IfcLogical_type = new type_declaration("IfcLogical", 574, new simple_type(simple_type::logical_type));
{
std::vector items; items.reserve(5);
items.push_back("LOGICALAND");
items.push_back("LOGICALNOTAND");
items.push_back("LOGICALNOTOR");
items.push_back("LOGICALOR");
items.push_back("LOGICALXOR");
IFC4X2_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 575, items);
}
IFC4X2_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 578, new simple_type(simple_type::real_type));
IFC4X2_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 579, new simple_type(simple_type::real_type));
IFC4X2_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 580, new simple_type(simple_type::real_type));
IFC4X2_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 581, new simple_type(simple_type::real_type));
IFC4X2_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 582, new simple_type(simple_type::real_type));
IFC4X2_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 586, new simple_type(simple_type::real_type));
IFC4X2_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 587, new simple_type(simple_type::real_type));
IFC4X2_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 588, new simple_type(simple_type::real_type));
IFC4X2_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 589, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(13);
items.push_back("ANCHORBOLT");
items.push_back("BOLT");
items.push_back("COUPLER");
items.push_back("DOWEL");
items.push_back("NAIL");
items.push_back("NAILPLATE");
items.push_back("NOTDEFINED");
items.push_back("RIVET");
items.push_back("SCREW");
items.push_back("SHEARCONNECTOR");
items.push_back("STAPLE");
items.push_back("STUDSHEARCONNECTOR");
items.push_back("USERDEFINED");
IFC4X2_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 614, items);
}
{
std::vector items; items.reserve(7);
items.push_back("AIRSTATION");
items.push_back("FEEDAIRUNIT");
items.push_back("NOTDEFINED");
items.push_back("OXYGENGENERATOR");
items.push_back("OXYGENPLANT");
items.push_back("USERDEFINED");
items.push_back("VACUUMSTATION");
IFC4X2_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 617, items);
}
{
std::vector items; items.reserve(19);
items.push_back("ARCH_SEGMENT");
items.push_back("BRACE");
items.push_back("CHORD");
items.push_back("COLLAR");
items.push_back("MEMBER");
items.push_back("MULLION");
items.push_back("NOTDEFINED");
items.push_back("PLATE");
items.push_back("POST");
items.push_back("PURLIN");
items.push_back("RAFTER");
items.push_back("STAY_CABLE");
items.push_back("STIFFENING_RIB");
items.push_back("STRINGER");
items.push_back("STRUT");
items.push_back("STUD");
items.push_back("SUSPENDER");
items.push_back("SUSPENSION_CABLE");
items.push_back("USERDEFINED");
IFC4X2_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 621, items);
}
IFC4X2_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 625, new simple_type(simple_type::real_type));
IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 626, new simple_type(simple_type::real_type));
IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 627, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type);
IFC4X2_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 628, items);
}
IFC4X2_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 629, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcModulusOfSubgradeReactionMeasure_type);
IFC4X2_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 630, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type);
IFC4X2_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 631, items);
}
IFC4X2_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 632, new simple_type(simple_type::real_type));
IFC4X2_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 633, new simple_type(simple_type::real_type));
IFC4X2_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 634, new simple_type(simple_type::real_type));
IFC4X2_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 635, new simple_type(simple_type::real_type));
IFC4X2_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 637, new simple_type(simple_type::integer_type));
{
std::vector items; items.reserve(5);
items.push_back("BELTDRIVE");
items.push_back("COUPLING");
items.push_back("DIRECTDRIVE");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 640, items);
}
IFC4X2_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 642, new named_type(IFC4X2_IfcLengthMeasure_type));
{
std::vector items; items.reserve(1);
items.push_back("NULL");
IFC4X2_IfcNullStyle_type = new enumeration_type("IfcNullStyle", 644, items);
}
IFC4X2_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 645, new simple_type(simple_type::number_type));
{
std::vector items; items.reserve(8);
items.push_back("ACTOR");
items.push_back("CONTROL");
items.push_back("GROUP");
items.push_back("NOTDEFINED");
items.push_back("PROCESS");
items.push_back("PRODUCT");
items.push_back("PROJECT");
items.push_back("RESOURCE");
IFC4X2_IfcObjectTypeEnum_type = new enumeration_type("IfcObjectTypeEnum", 652, items);
}
{
std::vector items; items.reserve(13);
items.push_back("CODECOMPLIANCE");
items.push_back("CODEWAIVER");
items.push_back("DESIGNINTENT");
items.push_back("EXTERNAL");
items.push_back("HEALTHANDSAFETY");
items.push_back("MERGECONFLICT");
items.push_back("MODELVIEW");
items.push_back("NOTDEFINED");
items.push_back("PARAMETER");
items.push_back("REQUIREMENT");
items.push_back("SPECIFICATION");
items.push_back("TRIGGERCONDITION");
items.push_back("USERDEFINED");
IFC4X2_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 649, items);
}
{
std::vector items; items.reserve(9);
items.push_back("ASSIGNEE");
items.push_back("ASSIGNOR");
items.push_back("LESSEE");
items.push_back("LESSOR");
items.push_back("LETTINGAGENT");
items.push_back("NOTDEFINED");
items.push_back("OWNER");
items.push_back("TENANT");
items.push_back("USERDEFINED");
IFC4X2_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 654, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("OPENING");
items.push_back("RECESS");
items.push_back("USERDEFINED");
IFC4X2_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 660, items);
}
{
std::vector items; items.reserve(7);
items.push_back("AUDIOVISUALOUTLET");
items.push_back("COMMUNICATIONSOUTLET");
items.push_back("DATAOUTLET");
items.push_back("NOTDEFINED");
items.push_back("POWEROUTLET");
items.push_back("TELEPHONEOUTLET");
items.push_back("USERDEFINED");
IFC4X2_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 670, items);
}
IFC4X2_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 684, new simple_type(simple_type::real_type));
IFC4X2_IfcParameterValue_type = new type_declaration("IfcParameterValue", 673, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 677, items);
}
{
std::vector items; items.reserve(5);
items.push_back("GRILL");
items.push_back("LOUVER");
items.push_back("NOTDEFINED");
items.push_back("SCREEN");
items.push_back("USERDEFINED");
IFC4X2_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 678, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ACCESS");
items.push_back("BUILDING");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
items.push_back("WORK");
IFC4X2_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 681, items);
}
{
std::vector items; items.reserve(3);
items.push_back("NOTDEFINED");
items.push_back("PHYSICAL");
items.push_back("VIRTUAL");
IFC4X2_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 686, items);
}
{
std::vector items; items.reserve(6);
items.push_back("CAST_IN_PLACE");
items.push_back("COMPOSITE");
items.push_back("NOTDEFINED");
items.push_back("PRECAST_CONCRETE");
items.push_back("PREFAB_STEEL");
items.push_back("USERDEFINED");
IFC4X2_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 690, items);
}
{
std::vector items; items.reserve(8);
items.push_back("BORED");
items.push_back("COHESION");
items.push_back("DRIVEN");
items.push_back("FRICTION");
items.push_back("JETGROUTING");
items.push_back("NOTDEFINED");
items.push_back("SUPPORT");
items.push_back("USERDEFINED");
IFC4X2_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 692, items);
}
{
std::vector items; items.reserve(9);
items.push_back("BEND");
items.push_back("CONNECTOR");
items.push_back("ENTRY");
items.push_back("EXIT");
items.push_back("JUNCTION");
items.push_back("NOTDEFINED");
items.push_back("OBSTRUCTION");
items.push_back("TRANSITION");
items.push_back("USERDEFINED");
IFC4X2_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 695, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CULVERT");
items.push_back("FLEXIBLESEGMENT");
items.push_back("GUTTER");
items.push_back("NOTDEFINED");
items.push_back("RIGIDSEGMENT");
items.push_back("SPOOL");
items.push_back("USERDEFINED");
IFC4X2_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 698, items);
}
IFC4X2_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 703, new simple_type(simple_type::real_type));
IFC4X2_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 705, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(11);
items.push_back("BASE_PLATE");
items.push_back("COVER_PLATE");
items.push_back("CURTAIN_PANEL");
items.push_back("FLANGE_PLATE");
items.push_back("GUSSET_PLATE");
items.push_back("NOTDEFINED");
items.push_back("SHEET");
items.push_back("SPLICE_PLATE");
items.push_back("STIFFENER_PLATE");
items.push_back("USERDEFINED");
items.push_back("WEB_PLATE");
IFC4X2_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 709, items);
}
IFC4X2_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 720, new named_type(IFC4X2_IfcInteger_type));
IFC4X2_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 721, new named_type(IFC4X2_IfcLengthMeasure_type));
IFC4X2_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 722, new named_type(IFC4X2_IfcPlaneAngleMeasure_type));
IFC4X2_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 725, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(3);
items.push_back("CURVE3D");
items.push_back("PCURVE_S1");
items.push_back("PCURVE_S2");
IFC4X2_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 732, items);
}
IFC4X2_IfcPresentableText_type = new type_declaration("IfcPresentableText", 733, new simple_type(simple_type::string_type));
IFC4X2_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 740, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(9);
items.push_back("ADVICE_CAUTION");
items.push_back("ADVICE_NOTE");
items.push_back("ADVICE_WARNING");
items.push_back("CALIBRATION");
items.push_back("DIAGNOSTIC");
items.push_back("NOTDEFINED");
items.push_back("SHUTDOWN");
items.push_back("STARTUP");
items.push_back("USERDEFINED");
IFC4X2_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 743, items);
}
{
std::vector items; items.reserve(2);
items.push_back("AREA");
items.push_back("CURVE");
IFC4X2_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 753, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CHANGEORDER");
items.push_back("MAINTENANCEWORKORDER");
items.push_back("MOVEORDER");
items.push_back("NOTDEFINED");
items.push_back("PURCHASEORDER");
items.push_back("USERDEFINED");
items.push_back("WORKORDER");
IFC4X2_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 761, items);
}
{
std::vector items; items.reserve(2);
items.push_back("PROJECTED_LENGTH");
items.push_back("TRUE_LENGTH");
IFC4X2_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 756, items);
}
{
std::vector items; items.reserve(4);
items.push_back("BLISTER");
items.push_back("DEVIATOR");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 758, items);
}
{
std::vector items; items.reserve(8);
items.push_back("NOTDEFINED");
items.push_back("PSET_OCCURRENCEDRIVEN");
items.push_back("PSET_PERFORMANCEDRIVEN");
items.push_back("PSET_TYPEDRIVENONLY");
items.push_back("PSET_TYPEDRIVENOVERRIDE");
items.push_back("QTO_OCCURRENCEDRIVEN");
items.push_back("QTO_TYPEDRIVENONLY");
items.push_back("QTO_TYPEDRIVENOVERRIDE");
IFC4X2_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 776, items);
}
{
std::vector items; items.reserve(6);
items.push_back("ELECTROMAGNETIC");
items.push_back("ELECTRONIC");
items.push_back("NOTDEFINED");
items.push_back("RESIDUALCURRENT");
items.push_back("THERMAL");
items.push_back("USERDEFINED");
IFC4X2_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 784, items);
}
{
std::vector items; items.reserve(9);
items.push_back("CIRCUITBREAKER");
items.push_back("EARTHINGSWITCH");
items.push_back("EARTHLEAKAGECIRCUITBREAKER");
items.push_back("FUSEDISCONNECTOR");
items.push_back("NOTDEFINED");
items.push_back("RESIDUALCURRENTCIRCUITBREAKER");
items.push_back("RESIDUALCURRENTSWITCH");
items.push_back("USERDEFINED");
items.push_back("VARISTOR");
IFC4X2_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 786, items);
}
{
std::vector items; items.reserve(9);
items.push_back("CIRCULATOR");
items.push_back("ENDSUCTION");
items.push_back("NOTDEFINED");
items.push_back("SPLITCASE");
items.push_back("SUBMERSIBLEPUMP");
items.push_back("SUMPPUMP");
items.push_back("USERDEFINED");
items.push_back("VERTICALINLINE");
items.push_back("VERTICALTURBINE");
IFC4X2_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 790, items);
}
IFC4X2_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 798, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("BALUSTRADE");
items.push_back("GUARDRAIL");
items.push_back("HANDRAIL");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 801, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("SPIRAL");
items.push_back("STRAIGHT");
items.push_back("USERDEFINED");
IFC4X2_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 805, items);
}
{
std::vector items; items.reserve(8);
items.push_back("HALF_TURN_RAMP");
items.push_back("NOTDEFINED");
items.push_back("QUARTER_TURN_RAMP");
items.push_back("SPIRAL_RAMP");
items.push_back("STRAIGHT_RUN_RAMP");
items.push_back("TWO_QUARTER_TURN_RAMP");
items.push_back("TWO_STRAIGHT_RUN_RAMP");
items.push_back("USERDEFINED");
IFC4X2_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 807, items);
}
IFC4X2_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 808, new simple_type(simple_type::real_type));
IFC4X2_IfcReal_type = new type_declaration("IfcReal", 811, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(8);
items.push_back("BY_DAY_COUNT");
items.push_back("BY_WEEKDAY_COUNT");
items.push_back("DAILY");
items.push_back("MONTHLY_BY_DAY_OF_MONTH");
items.push_back("MONTHLY_BY_POSITION");
items.push_back("WEEKLY");
items.push_back("YEARLY_BY_DAY_OF_MONTH");
items.push_back("YEARLY_BY_POSITION");
IFC4X2_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 817, items);
}
{
std::vector items; items.reserve(5);
items.push_back("KILOPOINT");
items.push_back("MILEPOINT");
items.push_back("NOTDEFINED");
items.push_back("STATION");
items.push_back("USERDEFINED");
IFC4X2_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 820, items);
}
{
std::vector items; items.reserve(10);
items.push_back("BLINN");
items.push_back("FLAT");
items.push_back("GLASS");
items.push_back("MATT");
items.push_back("METAL");
items.push_back("MIRROR");
items.push_back("NOTDEFINED");
items.push_back("PHONG");
items.push_back("PLASTIC");
items.push_back("STRAUSS");
IFC4X2_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 821, items);
}
{
std::vector items; items.reserve(10);
items.push_back("ANCHORING");
items.push_back("EDGE");
items.push_back("LIGATURE");
items.push_back("MAIN");
items.push_back("NOTDEFINED");
items.push_back("PUNCHING");
items.push_back("RING");
items.push_back("SHEAR");
items.push_back("STUD");
items.push_back("USERDEFINED");
IFC4X2_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 826, items);
}
{
std::vector items; items.reserve(2);
items.push_back("PLAIN");
items.push_back("TEXTURED");
IFC4X2_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 827, items);
}
{
std::vector items; items.reserve(11);
items.push_back("ANCHORING");
items.push_back("EDGE");
items.push_back("LIGATURE");
items.push_back("MAIN");
items.push_back("NOTDEFINED");
items.push_back("PUNCHING");
items.push_back("RING");
items.push_back("SHEAR");
items.push_back("SPACEBAR");
items.push_back("STUD");
items.push_back("USERDEFINED");
IFC4X2_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 829, items);
}
{
std::vector items; items.reserve(2);
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 834, items);
}
{
std::vector items; items.reserve(23);
items.push_back("ARCHITECT");
items.push_back("BUILDINGOPERATOR");
items.push_back("BUILDINGOWNER");
items.push_back("CIVILENGINEER");
items.push_back("CLIENT");
items.push_back("COMMISSIONINGENGINEER");
items.push_back("CONSTRUCTIONMANAGER");
items.push_back("CONSULTANT");
items.push_back("CONTRACTOR");
items.push_back("COSTENGINEER");
items.push_back("ELECTRICALENGINEER");
items.push_back("ENGINEER");
items.push_back("FACILITIESMANAGER");
items.push_back("FIELDCONSTRUCTIONMANAGER");
items.push_back("MANUFACTURER");
items.push_back("MECHANICALENGINEER");
items.push_back("OWNER");
items.push_back("PROJECTMANAGER");
items.push_back("RESELLER");
items.push_back("STRUCTURALENGINEER");
items.push_back("SUBCONTRACTOR");
items.push_back("SUPPLIER");
items.push_back("USERDEFINED");
IFC4X2_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 900, items);
}
{
std::vector items; items.reserve(15);
items.push_back("BARREL_ROOF");
items.push_back("BUTTERFLY_ROOF");
items.push_back("DOME_ROOF");
items.push_back("FLAT_ROOF");
items.push_back("FREEFORM");
items.push_back("GABLE_ROOF");
items.push_back("GAMBREL_ROOF");
items.push_back("HIPPED_GABLE_ROOF");
items.push_back("HIP_ROOF");
items.push_back("MANSARD_ROOF");
items.push_back("NOTDEFINED");
items.push_back("PAVILION_ROOF");
items.push_back("RAINBOW_ROOF");
items.push_back("SHED_ROOF");
items.push_back("USERDEFINED");
IFC4X2_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 903, items);
}
IFC4X2_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 905, new simple_type(simple_type::real_type));
IFC4X2_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 906, new simple_type(simple_type::real_type));
IFC4X2_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 907, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcRotationalStiffnessMeasure_type);
IFC4X2_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 908, items);
}
{
std::vector items; items.reserve(16);
items.push_back("ATTO");
items.push_back("CENTI");
items.push_back("DECA");
items.push_back("DECI");
items.push_back("EXA");
items.push_back("FEMTO");
items.push_back("GIGA");
items.push_back("HECTO");
items.push_back("KILO");
items.push_back("MEGA");
items.push_back("MICRO");
items.push_back("MILLI");
items.push_back("NANO");
items.push_back("PETA");
items.push_back("PICO");
items.push_back("TERA");
IFC4X2_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 941, items);
}
{
std::vector items; items.reserve(30);
items.push_back("AMPERE");
items.push_back("BECQUEREL");
items.push_back("CANDELA");
items.push_back("COULOMB");
items.push_back("CUBIC_METRE");
items.push_back("DEGREE_CELSIUS");
items.push_back("FARAD");
items.push_back("GRAM");
items.push_back("GRAY");
items.push_back("HENRY");
items.push_back("HERTZ");
items.push_back("JOULE");
items.push_back("KELVIN");
items.push_back("LUMEN");
items.push_back("LUX");
items.push_back("METRE");
items.push_back("MOLE");
items.push_back("NEWTON");
items.push_back("OHM");
items.push_back("PASCAL");
items.push_back("RADIAN");
items.push_back("SECOND");
items.push_back("SIEMENS");
items.push_back("SIEVERT");
items.push_back("SQUARE_METRE");
items.push_back("STERADIAN");
items.push_back("TESLA");
items.push_back("VOLT");
items.push_back("WATT");
items.push_back("WEBER");
IFC4X2_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 944, items);
}
{
std::vector items; items.reserve(12);
items.push_back("BATH");
items.push_back("BIDET");
items.push_back("CISTERN");
items.push_back("NOTDEFINED");
items.push_back("SANITARYFOUNTAIN");
items.push_back("SHOWER");
items.push_back("SINK");
items.push_back("TOILETPAN");
items.push_back("URINAL");
items.push_back("USERDEFINED");
items.push_back("WASHHANDBASIN");
items.push_back("WCSEAT");
IFC4X2_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 912, items);
}
IFC4X2_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 919, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back("TAPERED");
items.push_back("UNIFORM");
IFC4X2_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 922, items);
}
IFC4X2_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 915, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(26);
items.push_back("CO2SENSOR");
items.push_back("CONDUCTANCESENSOR");
items.push_back("CONTACTSENSOR");
items.push_back("COSENSOR");
items.push_back("FIRESENSOR");
items.push_back("FLOWSENSOR");
items.push_back("FROSTSENSOR");
items.push_back("GASSENSOR");
items.push_back("HEATSENSOR");
items.push_back("HUMIDITYSENSOR");
items.push_back("IDENTIFIERSENSOR");
items.push_back("IONCONCENTRATIONSENSOR");
items.push_back("LEVELSENSOR");
items.push_back("LIGHTSENSOR");
items.push_back("MOISTURESENSOR");
items.push_back("MOVEMENTSENSOR");
items.push_back("NOTDEFINED");
items.push_back("PHSENSOR");
items.push_back("PRESSURESENSOR");
items.push_back("RADIATIONSENSOR");
items.push_back("RADIOACTIVITYSENSOR");
items.push_back("SMOKESENSOR");
items.push_back("SOUNDSENSOR");
items.push_back("TEMPERATURESENSOR");
items.push_back("USERDEFINED");
items.push_back("WINDSENSOR");
IFC4X2_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 926, items);
}
{
std::vector items; items.reserve(6);
items.push_back("FINISH_FINISH");
items.push_back("FINISH_START");
items.push_back("NOTDEFINED");
items.push_back("START_FINISH");
items.push_back("START_START");
items.push_back("USERDEFINED");
IFC4X2_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 927, items);
}
{
std::vector items; items.reserve(5);
items.push_back("AWNING");
items.push_back("JALOUSIE");
items.push_back("NOTDEFINED");
items.push_back("SHUTTER");
items.push_back("USERDEFINED");
IFC4X2_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 930, items);
}
IFC4X2_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 934, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(12);
items.push_back("P_BOUNDEDVALUE");
items.push_back("P_ENUMERATEDVALUE");
items.push_back("P_LISTVALUE");
items.push_back("P_REFERENCEVALUE");
items.push_back("P_SINGLEVALUE");
items.push_back("P_TABLEVALUE");
items.push_back("Q_AREA");
items.push_back("Q_COUNT");
items.push_back("Q_LENGTH");
items.push_back("Q_TIME");
items.push_back("Q_VOLUME");
items.push_back("Q_WEIGHT");
IFC4X2_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 939, items);
}
{
std::vector items; items.reserve(10);
items.push_back("APPROACH_SLAB");
items.push_back("BASESLAB");
items.push_back("FLOOR");
items.push_back("LANDING");
items.push_back("NOTDEFINED");
items.push_back("PAVING");
items.push_back("ROOF");
items.push_back("SIDEWALK");
items.push_back("USERDEFINED");
items.push_back("WEARING");
IFC4X2_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 950, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("SOLARCOLLECTOR");
items.push_back("SOLARPANEL");
items.push_back("USERDEFINED");
IFC4X2_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 954, items);
}
IFC4X2_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 955, new simple_type(simple_type::real_type));
IFC4X2_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 958, new simple_type(simple_type::real_type));
IFC4X2_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 959, new simple_type(simple_type::real_type));
IFC4X2_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 960, new simple_type(simple_type::real_type));
IFC4X2_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 961, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(4);
items.push_back("CONVECTOR");
items.push_back("NOTDEFINED");
items.push_back("RADIATOR");
items.push_back("USERDEFINED");
IFC4X2_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 966, items);
}
{
std::vector items; items.reserve(7);
items.push_back("EXTERNAL");
items.push_back("GFA");
items.push_back("INTERNAL");
items.push_back("NOTDEFINED");
items.push_back("PARKING");
items.push_back("SPACE");
items.push_back("USERDEFINED");
IFC4X2_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 968, items);
}
{
std::vector items; items.reserve(10);
items.push_back("CONSTRUCTION");
items.push_back("FIRESAFETY");
items.push_back("LIGHTING");
items.push_back("NOTDEFINED");
items.push_back("OCCUPANCY");
items.push_back("SECURITY");
items.push_back("THERMAL");
items.push_back("TRANSPORT");
items.push_back("USERDEFINED");
items.push_back("VENTILATION");
IFC4X2_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 975, items);
}
IFC4X2_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 976, new simple_type(simple_type::real_type));
IFC4X2_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 977, new simple_type(simple_type::real_type));
IFC4X2_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 979, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("BIRDCAGE");
items.push_back("COWL");
items.push_back("NOTDEFINED");
items.push_back("RAINWATERHOPPER");
items.push_back("USERDEFINED");
IFC4X2_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 984, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CURVED");
items.push_back("FREEFORM");
items.push_back("NOTDEFINED");
items.push_back("SPIRAL");
items.push_back("STRAIGHT");
items.push_back("USERDEFINED");
items.push_back("WINDER");
IFC4X2_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 988, items);
}
{
std::vector items; items.reserve(16);
items.push_back("CURVED_RUN_STAIR");
items.push_back("DOUBLE_RETURN_STAIR");
items.push_back("HALF_TURN_STAIR");
items.push_back("HALF_WINDING_STAIR");
items.push_back("NOTDEFINED");
items.push_back("QUARTER_TURN_STAIR");
items.push_back("QUARTER_WINDING_STAIR");
items.push_back("SPIRAL_STAIR");
items.push_back("STRAIGHT_RUN_STAIR");
items.push_back("THREE_QUARTER_TURN_STAIR");
items.push_back("THREE_QUARTER_WINDING_STAIR");
items.push_back("TWO_CURVED_RUN_STAIR");
items.push_back("TWO_QUARTER_TURN_STAIR");
items.push_back("TWO_QUARTER_WINDING_STAIR");
items.push_back("TWO_STRAIGHT_RUN_STAIR");
items.push_back("USERDEFINED");
IFC4X2_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 990, items);
}
{
std::vector items; items.reserve(5);
items.push_back("LOCKED");
items.push_back("READONLY");
items.push_back("READONLYLOCKED");
items.push_back("READWRITE");
items.push_back("READWRITELOCKED");
IFC4X2_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 991, items);
}
{
std::vector items; items.reserve(9);
items.push_back("CONST");
items.push_back("DISCRETE");
items.push_back("EQUIDISTANT");
items.push_back("LINEAR");
items.push_back("NOTDEFINED");
items.push_back("PARABOLA");
items.push_back("POLYGONAL");
items.push_back("SINUS");
items.push_back("USERDEFINED");
IFC4X2_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 999, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CABLE");
items.push_back("COMPRESSION_MEMBER");
items.push_back("NOTDEFINED");
items.push_back("PIN_JOINED_MEMBER");
items.push_back("RIGID_JOINED_MEMBER");
items.push_back("TENSION_MEMBER");
items.push_back("USERDEFINED");
IFC4X2_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1002, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BILINEAR");
items.push_back("CONST");
items.push_back("DISCRETE");
items.push_back("ISOCONTOUR");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1028, items);
}
{
std::vector items; items.reserve(5);
items.push_back("BENDING_ELEMENT");
items.push_back("MEMBRANE_ELEMENT");
items.push_back("NOTDEFINED");
items.push_back("SHELL");
items.push_back("USERDEFINED");
IFC4X2_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1031, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("PURCHASE");
items.push_back("USERDEFINED");
items.push_back("WORK");
IFC4X2_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1040, items);
}
{
std::vector items; items.reserve(6);
items.push_back("DEFECT");
items.push_back("MARK");
items.push_back("NOTDEFINED");
items.push_back("TAG");
items.push_back("TREATMENT");
items.push_back("USERDEFINED");
IFC4X2_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1046, items);
}
{
std::vector items; items.reserve(3);
items.push_back("BOTH");
items.push_back("NEGATIVE");
items.push_back("POSITIVE");
IFC4X2_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1051, items);
}
{
std::vector items; items.reserve(11);
items.push_back("CONTACTOR");
items.push_back("DIMMERSWITCH");
items.push_back("EMERGENCYSTOP");
items.push_back("KEYPAD");
items.push_back("MOMENTARYSWITCH");
items.push_back("NOTDEFINED");
items.push_back("SELECTORSWITCH");
items.push_back("STARTER");
items.push_back("SWITCHDISCONNECTOR");
items.push_back("TOGGLESWITCH");
items.push_back("USERDEFINED");
IFC4X2_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1066, items);
}
{
std::vector items; items.reserve(4);
items.push_back("NOTDEFINED");
items.push_back("PANEL");
items.push_back("USERDEFINED");
items.push_back("WORKSURFACE");
IFC4X2_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1070, items);
}
{
std::vector items; items.reserve(9);
items.push_back("BASIN");
items.push_back("BREAKPRESSURE");
items.push_back("EXPANSION");
items.push_back("FEEDANDEXPANSION");
items.push_back("NOTDEFINED");
items.push_back("PRESSUREVESSEL");
items.push_back("STORAGE");
items.push_back("USERDEFINED");
items.push_back("VESSEL");
IFC4X2_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1076, items);
}
{
std::vector items; items.reserve(3);
items.push_back("ELAPSEDTIME");
items.push_back("NOTDEFINED");
items.push_back("WORKTIME");
IFC4X2_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1078, items);
}
{
std::vector items; items.reserve(14);
items.push_back("ATTENDANCE");
items.push_back("CONSTRUCTION");
items.push_back("DEMOLITION");
items.push_back("DISMANTLE");
items.push_back("DISPOSAL");
items.push_back("INSTALLATION");
items.push_back("LOGISTIC");
items.push_back("MAINTENANCE");
items.push_back("MOVE");
items.push_back("NOTDEFINED");
items.push_back("OPERATION");
items.push_back("REMOVAL");
items.push_back("RENOVATION");
items.push_back("USERDEFINED");
IFC4X2_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1082, items);
}
IFC4X2_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1084, new simple_type(simple_type::real_type));
IFC4X2_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1085, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(5);
items.push_back("COUPLER");
items.push_back("FIXED_END");
items.push_back("NOTDEFINED");
items.push_back("TENSIONING_END");
items.push_back("USERDEFINED");
IFC4X2_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1089, items);
}
{
std::vector items; items.reserve(7);
items.push_back("COUPLER");
items.push_back("DIABOLO");
items.push_back("DUCT");
items.push_back("GROUTING_DUCT");
items.push_back("NOTDEFINED");
items.push_back("TRUMPET");
items.push_back("USERDEFINED");
IFC4X2_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1092, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BAR");
items.push_back("COATED");
items.push_back("NOTDEFINED");
items.push_back("STRAND");
items.push_back("USERDEFINED");
items.push_back("WIRE");
IFC4X2_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1094, items);
}
IFC4X2_IfcText_type = new type_declaration("IfcText", 1097, new simple_type(simple_type::string_type));
IFC4X2_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1098, new simple_type(simple_type::string_type));
IFC4X2_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1099, new simple_type(simple_type::string_type));
IFC4X2_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1100, new simple_type(simple_type::string_type));
{
std::vector items; items.reserve(4);
items.push_back("DOWN");
items.push_back("LEFT");
items.push_back("RIGHT");
items.push_back("UP");
IFC4X2_IfcTextPath_type = new enumeration_type("IfcTextPath", 1104, items);
}
IFC4X2_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1109, new simple_type(simple_type::string_type));
IFC4X2_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1115, new simple_type(simple_type::real_type));
IFC4X2_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1116, new simple_type(simple_type::real_type));
IFC4X2_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1117, new simple_type(simple_type::real_type));
IFC4X2_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1118, new simple_type(simple_type::real_type));
IFC4X2_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1119, new simple_type(simple_type::real_type));
IFC4X2_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1120, new simple_type(simple_type::real_type));
IFC4X2_IfcTime_type = new type_declaration("IfcTime", 1121, new simple_type(simple_type::string_type));
IFC4X2_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1122, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcDuration_type);
items.push_back(IFC4X2_IfcRatioMeasure_type);
IFC4X2_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1123, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CONTINUOUS");
items.push_back("DISCRETE");
items.push_back("DISCRETEBINARY");
items.push_back("NOTDEFINED");
items.push_back("PIECEWISEBINARY");
items.push_back("PIECEWISECONSTANT");
items.push_back("PIECEWISECONTINUOUS");
IFC4X2_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1126, items);
}
IFC4X2_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1128, new simple_type(simple_type::integer_type));
IFC4X2_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1132, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(7);
items.push_back("CURRENT");
items.push_back("FREQUENCY");
items.push_back("INVERTER");
items.push_back("NOTDEFINED");
items.push_back("RECTIFIER");
items.push_back("USERDEFINED");
items.push_back("VOLTAGE");
IFC4X2_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1135, items);
}
{
std::vector items; items.reserve(4);
items.push_back("CONTINUOUS");
items.push_back("CONTSAMEGRADIENT");
items.push_back("CONTSAMEGRADIENTSAMECURVATURE");
items.push_back("DISCONTINUOUS");
IFC4X2_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1136, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BIQUADRATICPARABOLA");
items.push_back("BLOSSCURVE");
items.push_back("CLOTHOIDCURVE");
items.push_back("COSINECURVE");
items.push_back("CUBICPARABOLA");
items.push_back("SINECURVE");
IFC4X2_IfcTransitionCurveType_type = new enumeration_type("IfcTransitionCurveType", 1138, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcLinearStiffnessMeasure_type);
IFC4X2_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1139, items);
}
{
std::vector items; items.reserve(7);
items.push_back("CRANEWAY");
items.push_back("ELEVATOR");
items.push_back("ESCALATOR");
items.push_back("LIFTINGGEAR");
items.push_back("MOVINGWALKWAY");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 1142, items);
}
{
std::vector items; items.reserve(3);
items.push_back("CARTESIAN");
items.push_back("PARAMETER");
items.push_back("UNSPECIFIED");
IFC4X2_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1147, items);
}
{
std::vector items; items.reserve(3);
items.push_back("FINNED");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1152, items);
}
IFC4X2_IfcURIReference_type = new type_declaration("IfcURIReference", 1166, new simple_type(simple_type::string_type));
{
std::vector items; items.reserve(30);
items.push_back("ABSORBEDDOSEUNIT");
items.push_back("AMOUNTOFSUBSTANCEUNIT");
items.push_back("AREAUNIT");
items.push_back("DOSEEQUIVALENTUNIT");
items.push_back("ELECTRICCAPACITANCEUNIT");
items.push_back("ELECTRICCHARGEUNIT");
items.push_back("ELECTRICCONDUCTANCEUNIT");
items.push_back("ELECTRICCURRENTUNIT");
items.push_back("ELECTRICRESISTANCEUNIT");
items.push_back("ELECTRICVOLTAGEUNIT");
items.push_back("ENERGYUNIT");
items.push_back("FORCEUNIT");
items.push_back("FREQUENCYUNIT");
items.push_back("ILLUMINANCEUNIT");
items.push_back("INDUCTANCEUNIT");
items.push_back("LENGTHUNIT");
items.push_back("LUMINOUSFLUXUNIT");
items.push_back("LUMINOUSINTENSITYUNIT");
items.push_back("MAGNETICFLUXDENSITYUNIT");
items.push_back("MAGNETICFLUXUNIT");
items.push_back("MASSUNIT");
items.push_back("PLANEANGLEUNIT");
items.push_back("POWERUNIT");
items.push_back("PRESSUREUNIT");
items.push_back("RADIOACTIVITYUNIT");
items.push_back("SOLIDANGLEUNIT");
items.push_back("THERMODYNAMICTEMPERATUREUNIT");
items.push_back("TIMEUNIT");
items.push_back("USERDEFINED");
items.push_back("VOLUMEUNIT");
IFC4X2_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1165, items);
}
{
std::vector items; items.reserve(10);
items.push_back("ALARMPANEL");
items.push_back("CONTROLPANEL");
items.push_back("GASDETECTIONPANEL");
items.push_back("HUMIDISTAT");
items.push_back("INDICATORPANEL");
items.push_back("MIMICPANEL");
items.push_back("NOTDEFINED");
items.push_back("THERMOSTAT");
items.push_back("USERDEFINED");
items.push_back("WEATHERSTATION");
IFC4X2_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1160, items);
}
{
std::vector items; items.reserve(7);
items.push_back("AIRCONDITIONINGUNIT");
items.push_back("AIRHANDLER");
items.push_back("DEHUMIDIFIER");
items.push_back("NOTDEFINED");
items.push_back("ROOFTOPUNIT");
items.push_back("SPLITSYSTEM");
items.push_back("USERDEFINED");
IFC4X2_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1163, items);
}
{
std::vector items; items.reserve(23);
items.push_back("AIRRELEASE");
items.push_back("ANTIVACUUM");
items.push_back("CHANGEOVER");
items.push_back("CHECK");
items.push_back("COMMISSIONING");
items.push_back("DIVERTING");
items.push_back("DOUBLECHECK");
items.push_back("DOUBLEREGULATING");
items.push_back("DRAWOFFCOCK");
items.push_back("FAUCET");
items.push_back("FLUSHING");
items.push_back("GASCOCK");
items.push_back("GASTAP");
items.push_back("ISOLATING");
items.push_back("MIXING");
items.push_back("NOTDEFINED");
items.push_back("PRESSUREREDUCING");
items.push_back("PRESSURERELIEF");
items.push_back("REGULATING");
items.push_back("SAFETYCUTOFF");
items.push_back("STEAMTRAP");
items.push_back("STOPCOCK");
items.push_back("USERDEFINED");
IFC4X2_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1171, items);
}
IFC4X2_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1172, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(8);
items.push_back("AXIAL_YIELD");
items.push_back("BENDING_YIELD");
items.push_back("FRICTION");
items.push_back("NOTDEFINED");
items.push_back("RUBBER");
items.push_back("SHEAR_YIELD");
items.push_back("USERDEFINED");
items.push_back("VISCOUS");
IFC4X2_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1180, items);
}
{
std::vector items; items.reserve(5);
items.push_back("BASE");
items.push_back("COMPRESSION");
items.push_back("NOTDEFINED");
items.push_back("SPRING");
items.push_back("USERDEFINED");
IFC4X2_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1183, items);
}
{
std::vector items; items.reserve(8);
items.push_back("CHAMFER");
items.push_back("CUTOUT");
items.push_back("EDGE");
items.push_back("HOLE");
items.push_back("MITER");
items.push_back("NOTCH");
items.push_back("NOTDEFINED");
items.push_back("USERDEFINED");
IFC4X2_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1187, items);
}
IFC4X2_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1188, new simple_type(simple_type::real_type));
IFC4X2_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1189, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(12);
items.push_back("ELEMENTEDWALL");
items.push_back("MOVABLE");
items.push_back("NOTDEFINED");
items.push_back("PARAPET");
items.push_back("PARTITIONING");
items.push_back("PLUMBINGWALL");
items.push_back("POLYGONAL");
items.push_back("RETAININGWALL");
items.push_back("SHEAR");
items.push_back("SOLIDWALL");
items.push_back("STANDARD");
items.push_back("USERDEFINED");
IFC4X2_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1194, items);
}
IFC4X2_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1195, new simple_type(simple_type::real_type));
IFC4X2_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1196, new simple_type(simple_type::real_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcWarpingMomentMeasure_type);
IFC4X2_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1197, items);
}
{
std::vector items; items.reserve(9);
items.push_back("FLOORTRAP");
items.push_back("FLOORWASTE");
items.push_back("GULLYSUMP");
items.push_back("GULLYTRAP");
items.push_back("NOTDEFINED");
items.push_back("ROOFDRAIN");
items.push_back("USERDEFINED");
items.push_back("WASTEDISPOSALUNIT");
items.push_back("WASTETRAP");
IFC4X2_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1200, items);
}
{
std::vector items; items.reserve(14);
items.push_back("BOTTOMHUNG");
items.push_back("FIXEDCASEMENT");
items.push_back("NOTDEFINED");
items.push_back("OTHEROPERATION");
items.push_back("PIVOTHORIZONTAL");
items.push_back("PIVOTVERTICAL");
items.push_back("REMOVABLECASEMENT");
items.push_back("SIDEHUNGLEFTHAND");
items.push_back("SIDEHUNGRIGHTHAND");
items.push_back("SLIDINGHORIZONTAL");
items.push_back("SLIDINGVERTICAL");
items.push_back("TILTANDTURNLEFTHAND");
items.push_back("TILTANDTURNRIGHTHAND");
items.push_back("TOPHUNG");
IFC4X2_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1203, items);
}
{
std::vector items; items.reserve(6);
items.push_back("BOTTOM");
items.push_back("LEFT");
items.push_back("MIDDLE");
items.push_back("NOTDEFINED");
items.push_back("RIGHT");
items.push_back("TOP");
IFC4X2_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1204, items);
}
{
std::vector items; items.reserve(8);
items.push_back("ALUMINIUM");
items.push_back("ALUMINIUM_WOOD");
items.push_back("HIGH_GRADE_STEEL");
items.push_back("NOTDEFINED");
items.push_back("OTHER_CONSTRUCTION");
items.push_back("PLASTIC");
items.push_back("STEEL");
items.push_back("WOOD");
IFC4X2_IfcWindowStyleConstructionEnum_type = new enumeration_type("IfcWindowStyleConstructionEnum", 1208, items);
}
{
std::vector items; items.reserve(11);
items.push_back("DOUBLE_PANEL_HORIZONTAL");
items.push_back("DOUBLE_PANEL_VERTICAL");
items.push_back("NOTDEFINED");
items.push_back("SINGLE_PANEL");
items.push_back("TRIPLE_PANEL_BOTTOM");
items.push_back("TRIPLE_PANEL_HORIZONTAL");
items.push_back("TRIPLE_PANEL_LEFT");
items.push_back("TRIPLE_PANEL_RIGHT");
items.push_back("TRIPLE_PANEL_TOP");
items.push_back("TRIPLE_PANEL_VERTICAL");
items.push_back("USERDEFINED");
IFC4X2_IfcWindowStyleOperationEnum_type = new enumeration_type("IfcWindowStyleOperationEnum", 1209, items);
}
{
std::vector items; items.reserve(5);
items.push_back("LIGHTDOME");
items.push_back("NOTDEFINED");
items.push_back("SKYLIGHT");
items.push_back("USERDEFINED");
items.push_back("WINDOW");
IFC4X2_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1211, items);
}
{
std::vector items; items.reserve(11);
items.push_back("DOUBLE_PANEL_HORIZONTAL");
items.push_back("DOUBLE_PANEL_VERTICAL");
items.push_back("NOTDEFINED");
items.push_back("SINGLE_PANEL");
items.push_back("TRIPLE_PANEL_BOTTOM");
items.push_back("TRIPLE_PANEL_HORIZONTAL");
items.push_back("TRIPLE_PANEL_LEFT");
items.push_back("TRIPLE_PANEL_RIGHT");
items.push_back("TRIPLE_PANEL_TOP");
items.push_back("TRIPLE_PANEL_VERTICAL");
items.push_back("USERDEFINED");
IFC4X2_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1212, items);
}
{
std::vector items; items.reserve(5);
items.push_back("FIRSTSHIFT");
items.push_back("NOTDEFINED");
items.push_back("SECONDSHIFT");
items.push_back("THIRDSHIFT");
items.push_back("USERDEFINED");
IFC4X2_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1214, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ACTUAL");
items.push_back("BASELINE");
items.push_back("NOTDEFINED");
items.push_back("PLANNED");
items.push_back("USERDEFINED");
IFC4X2_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1217, items);
}
{
std::vector items; items.reserve(5);
items.push_back("ACTUAL");
items.push_back("BASELINE");
items.push_back("NOTDEFINED");
items.push_back("PLANNED");
items.push_back("USERDEFINED");
IFC4X2_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1219, items);
}
IFC4X2_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0);
IFC4X2_IfcAddress_type = new entity("IfcAddress", true, 12, 0);
IFC4X2_IfcApplication_type = new entity("IfcApplication", false, 46, 0);
IFC4X2_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 47, 0);
IFC4X2_IfcApproval_type = new entity("IfcApproval", false, 49, 0);
IFC4X2_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 89, 0);
IFC4X2_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 91, IFC4X2_IfcBoundaryCondition_type);
IFC4X2_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 92, IFC4X2_IfcBoundaryCondition_type);
IFC4X2_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 93, IFC4X2_IfcBoundaryCondition_type);
IFC4X2_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 94, IFC4X2_IfcBoundaryNodeCondition_type);
IFC4X2_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 202, 0);
IFC4X2_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 204, IFC4X2_IfcConnectionGeometry_type);
IFC4X2_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 205, IFC4X2_IfcConnectionGeometry_type);
IFC4X2_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 207, IFC4X2_IfcConnectionGeometry_type);
IFC4X2_IfcConstraint_type = new entity("IfcConstraint", true, 208, 0);
IFC4X2_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 236, 0);
IFC4X2_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 237, 0);
IFC4X2_IfcCostValue_type = new entity("IfcCostValue", false, 243, IFC4X2_IfcAppliedValue_type);
IFC4X2_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 287, 0);
IFC4X2_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 288, 0);
IFC4X2_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 291, 0);
IFC4X2_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 402, 0);
IFC4X2_IfcExternalReference_type = new entity("IfcExternalReference", true, 406, 0);
IFC4X2_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 403, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 404, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 405, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcGridAxis_type = new entity("IfcGridAxis", false, 490, 0);
IFC4X2_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 526, 0);
IFC4X2_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 546, IFC4X2_IfcExternalInformation_type);
IFC4X2_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 547, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 550, 0);
IFC4X2_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 556, 0);
IFC4X2_IfcMapConversion_type = new entity("IfcMapConversion", false, 584, IFC4X2_IfcCoordinateOperation_type);
IFC4X2_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 591, 0);
IFC4X2_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 594, 0);
IFC4X2_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 596, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 597, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 599, IFC4X2_IfcMaterialLayer_type);
IFC4X2_IfcMaterialList_type = new entity("IfcMaterialList", false, 600, 0);
IFC4X2_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 601, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 602, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 605, IFC4X2_IfcMaterialProfile_type);
IFC4X2_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 609, 0);
IFC4X2_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 611, 0);
IFC4X2_IfcMetric_type = new entity("IfcMetric", false, 622, IFC4X2_IfcConstraint_type);
IFC4X2_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 636, 0);
IFC4X2_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 641, 0);
IFC4X2_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 650, 0);
IFC4X2_IfcObjective_type = new entity("IfcObjective", false, 648, IFC4X2_IfcConstraint_type);
IFC4X2_IfcOrganization_type = new entity("IfcOrganization", false, 663, 0);
IFC4X2_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 671, 0);
IFC4X2_IfcPerson_type = new entity("IfcPerson", false, 682, 0);
IFC4X2_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 683, 0);
IFC4X2_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 687, 0);
IFC4X2_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 688, IFC4X2_IfcPhysicalQuantity_type);
IFC4X2_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 724, IFC4X2_IfcAddress_type);
IFC4X2_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 734, 0);
IFC4X2_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 735, 0);
IFC4X2_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 736, IFC4X2_IfcPresentationLayerAssignment_type);
IFC4X2_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 737, 0);
IFC4X2_IfcPresentationStyleAssignment_type = new entity("IfcPresentationStyleAssignment", false, 738, 0);
IFC4X2_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 748, 0);
IFC4X2_IfcProfileDef_type = new entity("IfcProfileDef", false, 751, 0);
IFC4X2_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 755, IFC4X2_IfcCoordinateReferenceSystem_type);
IFC4X2_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 763, 0);
IFC4X2_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 768, IFC4X2_IfcPropertyAbstraction_type);
IFC4X2_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 791, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 792, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 793, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 795, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 796, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 797, IFC4X2_IfcPhysicalSimpleQuantity_type);
IFC4X2_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 816, 0);
IFC4X2_IfcReference_type = new entity("IfcReference", false, 818, 0);
IFC4X2_IfcRepresentation_type = new entity("IfcRepresentation", true, 885, 0);
IFC4X2_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 886, 0);
IFC4X2_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 887, 0);
IFC4X2_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 888, 0);
IFC4X2_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 892, 0);
IFC4X2_IfcRoot_type = new entity("IfcRoot", true, 904, 0);
IFC4X2_IfcSIUnit_type = new entity("IfcSIUnit", false, 943, IFC4X2_IfcNamedUnit_type);
IFC4X2_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 913, 0);
IFC4X2_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 931, 0);
IFC4X2_IfcShapeModel_type = new entity("IfcShapeModel", true, 932, IFC4X2_IfcRepresentation_type);
IFC4X2_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 933, IFC4X2_IfcShapeModel_type);
IFC4X2_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 997, 0);
IFC4X2_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1007, 0);
IFC4X2_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1009, IFC4X2_IfcStructuralLoad_type);
IFC4X2_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1012, IFC4X2_IfcStructuralLoad_type);
IFC4X2_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1018, IFC4X2_IfcStructuralLoadOrResult_type);
IFC4X2_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1019, IFC4X2_IfcStructuralLoadStatic_type);
IFC4X2_IfcStyleModel_type = new entity("IfcStyleModel", true, 1037, IFC4X2_IfcRepresentation_type);
IFC4X2_IfcStyledItem_type = new entity("IfcStyledItem", false, 1035, IFC4X2_IfcRepresentationItem_type);
IFC4X2_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1036, IFC4X2_IfcStyleModel_type);
IFC4X2_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1050, IFC4X2_IfcStructuralLoadOrResult_type);
IFC4X2_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1052, IFC4X2_IfcPresentationStyle_type);
IFC4X2_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1054, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1055, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1057, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1058, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1059, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTable_type = new entity("IfcTable", false, 1071, 0);
IFC4X2_IfcTableColumn_type = new entity("IfcTableColumn", false, 1072, 0);
IFC4X2_IfcTableRow_type = new entity("IfcTableRow", false, 1073, 0);
IFC4X2_IfcTaskTime_type = new entity("IfcTaskTime", false, 1079, IFC4X2_IfcSchedulingTime_type);
IFC4X2_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1080, IFC4X2_IfcTaskTime_type);
IFC4X2_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1083, IFC4X2_IfcAddress_type);
IFC4X2_IfcTextStyle_type = new entity("IfcTextStyle", false, 1105, IFC4X2_IfcPresentationStyle_type);
IFC4X2_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1107, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1108, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1110, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1111, IFC4X2_IfcTextureCoordinate_type);
IFC4X2_IfcTextureMap_type = new entity("IfcTextureMap", false, 1112, IFC4X2_IfcTextureCoordinate_type);
IFC4X2_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1113, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1114, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1124, 0);
IFC4X2_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1125, 0);
IFC4X2_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1127, 0);
IFC4X2_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1129, IFC4X2_IfcRepresentationItem_type);
IFC4X2_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1130, IFC4X2_IfcShapeModel_type);
IFC4X2_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1164, 0);
IFC4X2_IfcVertex_type = new entity("IfcVertex", false, 1175, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1177, IFC4X2_IfcVertex_type);
IFC4X2_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1185, 0);
IFC4X2_IfcWorkTime_type = new entity("IfcWorkTime", false, 1220, IFC4X2_IfcSchedulingTime_type);
{
std::vector items; items.reserve(3);
items.push_back(IFC4X2_IfcOrganization_type);
items.push_back(IFC4X2_IfcPerson_type);
items.push_back(IFC4X2_IfcPersonAndOrganization_type);
IFC4X2_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items);
}
IFC4X2_IfcArcIndex_type = new type_declaration("IfcArcIndex", 54, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X2_IfcPositiveInteger_type)));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcLengthMeasure_type);
items.push_back(IFC4X2_IfcPlaneAngleMeasure_type);
IFC4X2_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 77, items);
}
IFC4X2_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 98, new named_type(IFC4X2_IfcLabel_type));
{
std::vector items; items.reserve(71);
items.push_back(IFC4X2_IfcAbsorbedDoseMeasure_type);
items.push_back(IFC4X2_IfcAccelerationMeasure_type);
items.push_back(IFC4X2_IfcAngularVelocityMeasure_type);
items.push_back(IFC4X2_IfcAreaDensityMeasure_type);
items.push_back(IFC4X2_IfcCompoundPlaneAngleMeasure_type);
items.push_back(IFC4X2_IfcCurvatureMeasure_type);
items.push_back(IFC4X2_IfcDoseEquivalentMeasure_type);
items.push_back(IFC4X2_IfcDynamicViscosityMeasure_type);
items.push_back(IFC4X2_IfcElectricCapacitanceMeasure_type);
items.push_back(IFC4X2_IfcElectricChargeMeasure_type);
items.push_back(IFC4X2_IfcElectricConductanceMeasure_type);
items.push_back(IFC4X2_IfcElectricResistanceMeasure_type);
items.push_back(IFC4X2_IfcElectricVoltageMeasure_type);
items.push_back(IFC4X2_IfcEnergyMeasure_type);
items.push_back(IFC4X2_IfcForceMeasure_type);
items.push_back(IFC4X2_IfcFrequencyMeasure_type);
items.push_back(IFC4X2_IfcHeatFluxDensityMeasure_type);
items.push_back(IFC4X2_IfcHeatingValueMeasure_type);
items.push_back(IFC4X2_IfcIlluminanceMeasure_type);
items.push_back(IFC4X2_IfcInductanceMeasure_type);
items.push_back(IFC4X2_IfcIntegerCountRateMeasure_type);
items.push_back(IFC4X2_IfcIonConcentrationMeasure_type);
items.push_back(IFC4X2_IfcIsothermalMoistureCapacityMeasure_type);
items.push_back(IFC4X2_IfcKinematicViscosityMeasure_type);
items.push_back(IFC4X2_IfcLinearForceMeasure_type);
items.push_back(IFC4X2_IfcLinearMomentMeasure_type);
items.push_back(IFC4X2_IfcLinearStiffnessMeasure_type);
items.push_back(IFC4X2_IfcLinearVelocityMeasure_type);
items.push_back(IFC4X2_IfcLuminousFluxMeasure_type);
items.push_back(IFC4X2_IfcLuminousIntensityDistributionMeasure_type);
items.push_back(IFC4X2_IfcMagneticFluxDensityMeasure_type);
items.push_back(IFC4X2_IfcMagneticFluxMeasure_type);
items.push_back(IFC4X2_IfcMassDensityMeasure_type);
items.push_back(IFC4X2_IfcMassFlowRateMeasure_type);
items.push_back(IFC4X2_IfcMassPerLengthMeasure_type);
items.push_back(IFC4X2_IfcModulusOfElasticityMeasure_type);
items.push_back(IFC4X2_IfcModulusOfLinearSubgradeReactionMeasure_type);
items.push_back(IFC4X2_IfcModulusOfRotationalSubgradeReactionMeasure_type);
items.push_back(IFC4X2_IfcModulusOfSubgradeReactionMeasure_type);
items.push_back(IFC4X2_IfcMoistureDiffusivityMeasure_type);
items.push_back(IFC4X2_IfcMolecularWeightMeasure_type);
items.push_back(IFC4X2_IfcMomentOfInertiaMeasure_type);
items.push_back(IFC4X2_IfcMonetaryMeasure_type);
items.push_back(IFC4X2_IfcPHMeasure_type);
items.push_back(IFC4X2_IfcPlanarForceMeasure_type);
items.push_back(IFC4X2_IfcPowerMeasure_type);
items.push_back(IFC4X2_IfcPressureMeasure_type);
items.push_back(IFC4X2_IfcRadioActivityMeasure_type);
items.push_back(IFC4X2_IfcRotationalFrequencyMeasure_type);
items.push_back(IFC4X2_IfcRotationalMassMeasure_type);
items.push_back(IFC4X2_IfcRotationalStiffnessMeasure_type);
items.push_back(IFC4X2_IfcSectionModulusMeasure_type);
items.push_back(IFC4X2_IfcSectionalAreaIntegralMeasure_type);
items.push_back(IFC4X2_IfcShearModulusMeasure_type);
items.push_back(IFC4X2_IfcSoundPowerLevelMeasure_type);
items.push_back(IFC4X2_IfcSoundPowerMeasure_type);
items.push_back(IFC4X2_IfcSoundPressureLevelMeasure_type);
items.push_back(IFC4X2_IfcSoundPressureMeasure_type);
items.push_back(IFC4X2_IfcSpecificHeatCapacityMeasure_type);
items.push_back(IFC4X2_IfcTemperatureGradientMeasure_type);
items.push_back(IFC4X2_IfcTemperatureRateOfChangeMeasure_type);
items.push_back(IFC4X2_IfcThermalAdmittanceMeasure_type);
items.push_back(IFC4X2_IfcThermalConductivityMeasure_type);
items.push_back(IFC4X2_IfcThermalExpansionCoefficientMeasure_type);
items.push_back(IFC4X2_IfcThermalResistanceMeasure_type);
items.push_back(IFC4X2_IfcThermalTransmittanceMeasure_type);
items.push_back(IFC4X2_IfcTorqueMeasure_type);
items.push_back(IFC4X2_IfcVaporPermeabilityMeasure_type);
items.push_back(IFC4X2_IfcVolumetricFlowRateMeasure_type);
items.push_back(IFC4X2_IfcWarpingConstantMeasure_type);
items.push_back(IFC4X2_IfcWarpingMomentMeasure_type);
IFC4X2_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 285, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcRepresentation_type);
items.push_back(IFC4X2_IfcRepresentationItem_type);
IFC4X2_IfcLayeredItem_type = new select_type("IfcLayeredItem", 543, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcLibraryInformation_type);
items.push_back(IFC4X2_IfcLibraryReference_type);
IFC4X2_IfcLibrarySelect_type = new select_type("IfcLibrarySelect", 548, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcExternalReference_type);
items.push_back(IFC4X2_IfcLightIntensityDistribution_type);
IFC4X2_IfcLightDistributionDataSourceSelect_type = new select_type("IfcLightDistributionDataSourceSelect", 551, items);
}
IFC4X2_IfcLineIndex_type = new type_declaration("IfcLineIndex", 570, new aggregation_type(aggregation_type::list_type, 2, -1, new named_type(IFC4X2_IfcPositiveInteger_type)));
{
std::vector items; items.reserve(3);
items.push_back(IFC4X2_IfcMaterialDefinition_type);
items.push_back(IFC4X2_IfcMaterialList_type);
items.push_back(IFC4X2_IfcMaterialUsageDefinition_type);
IFC4X2_IfcMaterialSelect_type = new select_type("IfcMaterialSelect", 608, items);
}
IFC4X2_IfcNormalisedRatioMeasure_type = new type_declaration("IfcNormalisedRatioMeasure", 643, new named_type(IFC4X2_IfcRatioMeasure_type));
{
std::vector items; items.reserve(9);
items.push_back(IFC4X2_IfcAddress_type);
items.push_back(IFC4X2_IfcAppliedValue_type);
items.push_back(IFC4X2_IfcExternalReference_type);
items.push_back(IFC4X2_IfcMaterialDefinition_type);
items.push_back(IFC4X2_IfcOrganization_type);
items.push_back(IFC4X2_IfcPerson_type);
items.push_back(IFC4X2_IfcPersonAndOrganization_type);
items.push_back(IFC4X2_IfcTable_type);
items.push_back(IFC4X2_IfcTimeSeries_type);
IFC4X2_IfcObjectReferenceSelect_type = new select_type("IfcObjectReferenceSelect", 651, items);
}
IFC4X2_IfcPositiveRatioMeasure_type = new type_declaration("IfcPositiveRatioMeasure", 723, new named_type(IFC4X2_IfcRatioMeasure_type));
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcArcIndex_type);
items.push_back(IFC4X2_IfcLineIndex_type);
IFC4X2_IfcSegmentIndexSelect_type = new select_type("IfcSegmentIndexSelect", 923, items);
}
{
std::vector items; items.reserve(14);
items.push_back(IFC4X2_IfcBinary_type);
items.push_back(IFC4X2_IfcBoolean_type);
items.push_back(IFC4X2_IfcDate_type);
items.push_back(IFC4X2_IfcDateTime_type);
items.push_back(IFC4X2_IfcDuration_type);
items.push_back(IFC4X2_IfcIdentifier_type);
items.push_back(IFC4X2_IfcInteger_type);
items.push_back(IFC4X2_IfcLabel_type);
items.push_back(IFC4X2_IfcLogical_type);
items.push_back(IFC4X2_IfcPositiveInteger_type);
items.push_back(IFC4X2_IfcReal_type);
items.push_back(IFC4X2_IfcText_type);
items.push_back(IFC4X2_IfcTime_type);
items.push_back(IFC4X2_IfcTimeStamp_type);
IFC4X2_IfcSimpleValue_type = new select_type("IfcSimpleValue", 940, items);
}
{
std::vector items; items.reserve(6);
items.push_back(IFC4X2_IfcDescriptiveMeasure_type);
items.push_back(IFC4X2_IfcLengthMeasure_type);
items.push_back(IFC4X2_IfcNormalisedRatioMeasure_type);
items.push_back(IFC4X2_IfcPositiveLengthMeasure_type);
items.push_back(IFC4X2_IfcPositiveRatioMeasure_type);
items.push_back(IFC4X2_IfcRatioMeasure_type);
IFC4X2_IfcSizeSelect_type = new select_type("IfcSizeSelect", 945, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcSpecularExponent_type);
items.push_back(IFC4X2_IfcSpecularRoughness_type);
IFC4X2_IfcSpecularHighlightSelect_type = new select_type("IfcSpecularHighlightSelect", 978, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcPresentationStyle_type);
items.push_back(IFC4X2_IfcPresentationStyleAssignment_type);
IFC4X2_IfcStyleAssignmentSelect_type = new select_type("IfcStyleAssignmentSelect", 1034, items);
}
{
std::vector items; items.reserve(5);
items.push_back(IFC4X2_IfcExternallyDefinedSurfaceStyle_type);
items.push_back(IFC4X2_IfcSurfaceStyleLighting_type);
items.push_back(IFC4X2_IfcSurfaceStyleRefraction_type);
items.push_back(IFC4X2_IfcSurfaceStyleShading_type);
items.push_back(IFC4X2_IfcSurfaceStyleWithTextures_type);
IFC4X2_IfcSurfaceStyleElementSelect_type = new select_type("IfcSurfaceStyleElementSelect", 1053, items);
}
{
std::vector items; items.reserve(3);
items.push_back(IFC4X2_IfcDerivedUnit_type);
items.push_back(IFC4X2_IfcMonetaryUnit_type);
items.push_back(IFC4X2_IfcNamedUnit_type);
IFC4X2_IfcUnit_type = new select_type("IfcUnit", 1157, items);
}
IFC4X2_IfcApprovalRelationship_type = new entity("IfcApprovalRelationship", false, 50, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcArbitraryClosedProfileDef_type = new entity("IfcArbitraryClosedProfileDef", false, 51, IFC4X2_IfcProfileDef_type);
IFC4X2_IfcArbitraryOpenProfileDef_type = new entity("IfcArbitraryOpenProfileDef", false, 52, IFC4X2_IfcProfileDef_type);
IFC4X2_IfcArbitraryProfileDefWithVoids_type = new entity("IfcArbitraryProfileDefWithVoids", false, 53, IFC4X2_IfcArbitraryClosedProfileDef_type);
IFC4X2_IfcBlobTexture_type = new entity("IfcBlobTexture", false, 79, IFC4X2_IfcSurfaceTexture_type);
IFC4X2_IfcCenterLineProfileDef_type = new entity("IfcCenterLineProfileDef", false, 150, IFC4X2_IfcArbitraryOpenProfileDef_type);
IFC4X2_IfcClassification_type = new entity("IfcClassification", false, 164, IFC4X2_IfcExternalInformation_type);
IFC4X2_IfcClassificationReference_type = new entity("IfcClassificationReference", false, 165, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcColourRgbList_type = new entity("IfcColourRgbList", false, 175, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcColourSpecification_type = new entity("IfcColourSpecification", true, 176, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcCompositeProfileDef_type = new entity("IfcCompositeProfileDef", false, 191, IFC4X2_IfcProfileDef_type);
IFC4X2_IfcConnectedFaceSet_type = new entity("IfcConnectedFaceSet", false, 200, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcConnectionCurveGeometry_type = new entity("IfcConnectionCurveGeometry", false, 201, IFC4X2_IfcConnectionGeometry_type);
IFC4X2_IfcConnectionPointEccentricity_type = new entity("IfcConnectionPointEccentricity", false, 203, IFC4X2_IfcConnectionPointGeometry_type);
IFC4X2_IfcContextDependentUnit_type = new entity("IfcContextDependentUnit", false, 223, IFC4X2_IfcNamedUnit_type);
IFC4X2_IfcConversionBasedUnit_type = new entity("IfcConversionBasedUnit", false, 228, IFC4X2_IfcNamedUnit_type);
IFC4X2_IfcConversionBasedUnitWithOffset_type = new entity("IfcConversionBasedUnitWithOffset", false, 229, IFC4X2_IfcConversionBasedUnit_type);
IFC4X2_IfcCurrencyRelationship_type = new entity("IfcCurrencyRelationship", false, 255, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcCurveStyle_type = new entity("IfcCurveStyle", false, 268, IFC4X2_IfcPresentationStyle_type);
IFC4X2_IfcCurveStyleFont_type = new entity("IfcCurveStyleFont", false, 269, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcCurveStyleFontAndScaling_type = new entity("IfcCurveStyleFontAndScaling", false, 270, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcCurveStyleFontPattern_type = new entity("IfcCurveStyleFontPattern", false, 271, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcDerivedProfileDef_type = new entity("IfcDerivedProfileDef", false, 286, IFC4X2_IfcProfileDef_type);
IFC4X2_IfcDocumentInformation_type = new entity("IfcDocumentInformation", false, 314, IFC4X2_IfcExternalInformation_type);
IFC4X2_IfcDocumentInformationRelationship_type = new entity("IfcDocumentInformationRelationship", false, 315, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcDocumentReference_type = new entity("IfcDocumentReference", false, 316, IFC4X2_IfcExternalReference_type);
IFC4X2_IfcEdge_type = new entity("IfcEdge", false, 345, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcEdgeCurve_type = new entity("IfcEdgeCurve", false, 346, IFC4X2_IfcEdge_type);
IFC4X2_IfcEventTime_type = new entity("IfcEventTime", false, 397, IFC4X2_IfcSchedulingTime_type);
IFC4X2_IfcExtendedProperties_type = new entity("IfcExtendedProperties", true, 401, IFC4X2_IfcPropertyAbstraction_type);
IFC4X2_IfcExternalReferenceRelationship_type = new entity("IfcExternalReferenceRelationship", false, 407, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcFace_type = new entity("IfcFace", false, 413, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcFaceBound_type = new entity("IfcFaceBound", false, 415, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcFaceOuterBound_type = new entity("IfcFaceOuterBound", false, 416, IFC4X2_IfcFaceBound_type);
IFC4X2_IfcFaceSurface_type = new entity("IfcFaceSurface", false, 417, IFC4X2_IfcFace_type);
IFC4X2_IfcFailureConnectionCondition_type = new entity("IfcFailureConnectionCondition", false, 422, IFC4X2_IfcStructuralConnectionCondition_type);
IFC4X2_IfcFillAreaStyle_type = new entity("IfcFillAreaStyle", false, 432, IFC4X2_IfcPresentationStyle_type);
IFC4X2_IfcGeometricRepresentationContext_type = new entity("IfcGeometricRepresentationContext", false, 482, IFC4X2_IfcRepresentationContext_type);
IFC4X2_IfcGeometricRepresentationItem_type = new entity("IfcGeometricRepresentationItem", true, 483, IFC4X2_IfcRepresentationItem_type);
IFC4X2_IfcGeometricRepresentationSubContext_type = new entity("IfcGeometricRepresentationSubContext", false, 484, IFC4X2_IfcGeometricRepresentationContext_type);
IFC4X2_IfcGeometricSet_type = new entity("IfcGeometricSet", false, 485, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcGridPlacement_type = new entity("IfcGridPlacement", false, 491, IFC4X2_IfcObjectPlacement_type);
IFC4X2_IfcHalfSpaceSolid_type = new entity("IfcHalfSpaceSolid", false, 495, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcImageTexture_type = new entity("IfcImageTexture", false, 507, IFC4X2_IfcSurfaceTexture_type);
IFC4X2_IfcIndexedColourMap_type = new entity("IfcIndexedColourMap", false, 508, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcIndexedTextureMap_type = new entity("IfcIndexedTextureMap", true, 512, IFC4X2_IfcTextureCoordinate_type);
IFC4X2_IfcIndexedTriangleTextureMap_type = new entity("IfcIndexedTriangleTextureMap", false, 513, IFC4X2_IfcIndexedTextureMap_type);
IFC4X2_IfcIrregularTimeSeries_type = new entity("IfcIrregularTimeSeries", false, 525, IFC4X2_IfcTimeSeries_type);
IFC4X2_IfcLagTime_type = new entity("IfcLagTime", false, 538, IFC4X2_IfcSchedulingTime_type);
IFC4X2_IfcLightSource_type = new entity("IfcLightSource", true, 557, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcLightSourceAmbient_type = new entity("IfcLightSourceAmbient", false, 558, IFC4X2_IfcLightSource_type);
IFC4X2_IfcLightSourceDirectional_type = new entity("IfcLightSourceDirectional", false, 559, IFC4X2_IfcLightSource_type);
IFC4X2_IfcLightSourceGoniometric_type = new entity("IfcLightSourceGoniometric", false, 560, IFC4X2_IfcLightSource_type);
IFC4X2_IfcLightSourcePositional_type = new entity("IfcLightSourcePositional", false, 561, IFC4X2_IfcLightSource_type);
IFC4X2_IfcLightSourceSpot_type = new entity("IfcLightSourceSpot", false, 562, IFC4X2_IfcLightSourcePositional_type);
IFC4X2_IfcLinearPlacement_type = new entity("IfcLinearPlacement", false, 566, IFC4X2_IfcObjectPlacement_type);
IFC4X2_IfcLocalPlacement_type = new entity("IfcLocalPlacement", false, 573, IFC4X2_IfcObjectPlacement_type);
IFC4X2_IfcLoop_type = new entity("IfcLoop", false, 576, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcMappedItem_type = new entity("IfcMappedItem", false, 585, IFC4X2_IfcRepresentationItem_type);
IFC4X2_IfcMaterial_type = new entity("IfcMaterial", false, 590, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialConstituent_type = new entity("IfcMaterialConstituent", false, 592, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialConstituentSet_type = new entity("IfcMaterialConstituentSet", false, 593, IFC4X2_IfcMaterialDefinition_type);
IFC4X2_IfcMaterialDefinitionRepresentation_type = new entity("IfcMaterialDefinitionRepresentation", false, 595, IFC4X2_IfcProductRepresentation_type);
IFC4X2_IfcMaterialLayerSetUsage_type = new entity("IfcMaterialLayerSetUsage", false, 598, IFC4X2_IfcMaterialUsageDefinition_type);
IFC4X2_IfcMaterialProfileSetUsage_type = new entity("IfcMaterialProfileSetUsage", false, 603, IFC4X2_IfcMaterialUsageDefinition_type);
IFC4X2_IfcMaterialProfileSetUsageTapering_type = new entity("IfcMaterialProfileSetUsageTapering", false, 604, IFC4X2_IfcMaterialProfileSetUsage_type);
IFC4X2_IfcMaterialProperties_type = new entity("IfcMaterialProperties", false, 606, IFC4X2_IfcExtendedProperties_type);
IFC4X2_IfcMaterialRelationship_type = new entity("IfcMaterialRelationship", false, 607, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcMirroredProfileDef_type = new entity("IfcMirroredProfileDef", false, 624, IFC4X2_IfcDerivedProfileDef_type);
IFC4X2_IfcObjectDefinition_type = new entity("IfcObjectDefinition", true, 647, IFC4X2_IfcRoot_type);
IFC4X2_IfcOpenShell_type = new entity("IfcOpenShell", false, 662, IFC4X2_IfcConnectedFaceSet_type);
IFC4X2_IfcOrganizationRelationship_type = new entity("IfcOrganizationRelationship", false, 664, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcOrientationExpression_type = new entity("IfcOrientationExpression", false, 665, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcOrientedEdge_type = new entity("IfcOrientedEdge", false, 666, IFC4X2_IfcEdge_type);
IFC4X2_IfcParameterizedProfileDef_type = new entity("IfcParameterizedProfileDef", true, 672, IFC4X2_IfcProfileDef_type);
IFC4X2_IfcPath_type = new entity("IfcPath", false, 674, IFC4X2_IfcTopologicalRepresentationItem_type);
IFC4X2_IfcPhysicalComplexQuantity_type = new entity("IfcPhysicalComplexQuantity", false, 685, IFC4X2_IfcPhysicalQuantity_type);
IFC4X2_IfcPixelTexture_type = new entity("IfcPixelTexture", false, 699, IFC4X2_IfcSurfaceTexture_type);
IFC4X2_IfcPlacement_type = new entity("IfcPlacement", true, 700, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcPlanarExtent_type = new entity("IfcPlanarExtent", false, 702, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcPoint_type = new entity("IfcPoint", true, 710, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcPointOnCurve_type = new entity("IfcPointOnCurve", false, 711, IFC4X2_IfcPoint_type);
IFC4X2_IfcPointOnSurface_type = new entity("IfcPointOnSurface", false, 712, IFC4X2_IfcPoint_type);
IFC4X2_IfcPolyLoop_type = new entity("IfcPolyLoop", false, 717, IFC4X2_IfcLoop_type);
IFC4X2_IfcPolygonalBoundedHalfSpace_type = new entity("IfcPolygonalBoundedHalfSpace", false, 714, IFC4X2_IfcHalfSpaceSolid_type);
IFC4X2_IfcPreDefinedItem_type = new entity("IfcPreDefinedItem", true, 728, IFC4X2_IfcPresentationItem_type);
IFC4X2_IfcPreDefinedProperties_type = new entity("IfcPreDefinedProperties", true, 729, IFC4X2_IfcPropertyAbstraction_type);
IFC4X2_IfcPreDefinedTextFont_type = new entity("IfcPreDefinedTextFont", true, 731, IFC4X2_IfcPreDefinedItem_type);
IFC4X2_IfcProductDefinitionShape_type = new entity("IfcProductDefinitionShape", false, 747, IFC4X2_IfcProductRepresentation_type);
IFC4X2_IfcProfileProperties_type = new entity("IfcProfileProperties", false, 752, IFC4X2_IfcExtendedProperties_type);
IFC4X2_IfcProperty_type = new entity("IfcProperty", true, 762, IFC4X2_IfcPropertyAbstraction_type);
IFC4X2_IfcPropertyDefinition_type = new entity("IfcPropertyDefinition", true, 765, IFC4X2_IfcRoot_type);
IFC4X2_IfcPropertyDependencyRelationship_type = new entity("IfcPropertyDependencyRelationship", false, 766, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcPropertySetDefinition_type = new entity("IfcPropertySetDefinition", true, 772, IFC4X2_IfcPropertyDefinition_type);
IFC4X2_IfcPropertyTemplateDefinition_type = new entity("IfcPropertyTemplateDefinition", true, 780, IFC4X2_IfcPropertyDefinition_type);
IFC4X2_IfcQuantitySet_type = new entity("IfcQuantitySet", true, 794, IFC4X2_IfcPropertySetDefinition_type);
IFC4X2_IfcRectangleProfileDef_type = new entity("IfcRectangleProfileDef", false, 813, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcRegularTimeSeries_type = new entity("IfcRegularTimeSeries", false, 822, IFC4X2_IfcTimeSeries_type);
IFC4X2_IfcReinforcementBarProperties_type = new entity("IfcReinforcementBarProperties", false, 823, IFC4X2_IfcPreDefinedProperties_type);
IFC4X2_IfcRelationship_type = new entity("IfcRelationship", true, 851, IFC4X2_IfcRoot_type);
IFC4X2_IfcResourceApprovalRelationship_type = new entity("IfcResourceApprovalRelationship", false, 890, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcResourceConstraintRelationship_type = new entity("IfcResourceConstraintRelationship", false, 891, IFC4X2_IfcResourceLevelRelationship_type);
IFC4X2_IfcResourceTime_type = new entity("IfcResourceTime", false, 895, IFC4X2_IfcSchedulingTime_type);
IFC4X2_IfcRoundedRectangleProfileDef_type = new entity("IfcRoundedRectangleProfileDef", false, 909, IFC4X2_IfcRectangleProfileDef_type);
IFC4X2_IfcSectionProperties_type = new entity("IfcSectionProperties", false, 920, IFC4X2_IfcPreDefinedProperties_type);
IFC4X2_IfcSectionReinforcementProperties_type = new entity("IfcSectionReinforcementProperties", false, 921, IFC4X2_IfcPreDefinedProperties_type);
IFC4X2_IfcSectionedSpine_type = new entity("IfcSectionedSpine", false, 918, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcShellBasedSurfaceModel_type = new entity("IfcShellBasedSurfaceModel", false, 936, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcSimpleProperty_type = new entity("IfcSimpleProperty", true, 937, IFC4X2_IfcProperty_type);
IFC4X2_IfcSlippageConnectionCondition_type = new entity("IfcSlippageConnectionCondition", false, 951, IFC4X2_IfcStructuralConnectionCondition_type);
IFC4X2_IfcSolidModel_type = new entity("IfcSolidModel", true, 956, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcStructuralLoadLinearForce_type = new entity("IfcStructuralLoadLinearForce", false, 1011, IFC4X2_IfcStructuralLoadStatic_type);
IFC4X2_IfcStructuralLoadPlanarForce_type = new entity("IfcStructuralLoadPlanarForce", false, 1013, IFC4X2_IfcStructuralLoadStatic_type);
IFC4X2_IfcStructuralLoadSingleDisplacement_type = new entity("IfcStructuralLoadSingleDisplacement", false, 1014, IFC4X2_IfcStructuralLoadStatic_type);
IFC4X2_IfcStructuralLoadSingleDisplacementDistortion_type = new entity("IfcStructuralLoadSingleDisplacementDistortion", false, 1015, IFC4X2_IfcStructuralLoadSingleDisplacement_type);
IFC4X2_IfcStructuralLoadSingleForce_type = new entity("IfcStructuralLoadSingleForce", false, 1016, IFC4X2_IfcStructuralLoadStatic_type);
IFC4X2_IfcStructuralLoadSingleForceWarping_type = new entity("IfcStructuralLoadSingleForceWarping", false, 1017, IFC4X2_IfcStructuralLoadSingleForce_type);
IFC4X2_IfcSubedge_type = new entity("IfcSubedge", false, 1041, IFC4X2_IfcEdge_type);
IFC4X2_IfcSurface_type = new entity("IfcSurface", true, 1042, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcSurfaceStyleRendering_type = new entity("IfcSurfaceStyleRendering", false, 1056, IFC4X2_IfcSurfaceStyleShading_type);
IFC4X2_IfcSweptAreaSolid_type = new entity("IfcSweptAreaSolid", true, 1060, IFC4X2_IfcSolidModel_type);
IFC4X2_IfcSweptDiskSolid_type = new entity("IfcSweptDiskSolid", false, 1061, IFC4X2_IfcSolidModel_type);
IFC4X2_IfcSweptDiskSolidPolygonal_type = new entity("IfcSweptDiskSolidPolygonal", false, 1062, IFC4X2_IfcSweptDiskSolid_type);
IFC4X2_IfcSweptSurface_type = new entity("IfcSweptSurface", true, 1063, IFC4X2_IfcSurface_type);
IFC4X2_IfcTShapeProfileDef_type = new entity("IfcTShapeProfileDef", false, 1149, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcTessellatedItem_type = new entity("IfcTessellatedItem", true, 1096, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcTextLiteral_type = new entity("IfcTextLiteral", false, 1102, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcTextLiteralWithExtent_type = new entity("IfcTextLiteralWithExtent", false, 1103, IFC4X2_IfcTextLiteral_type);
IFC4X2_IfcTextStyleFontModel_type = new entity("IfcTextStyleFontModel", false, 1106, IFC4X2_IfcPreDefinedTextFont_type);
IFC4X2_IfcTrapeziumProfileDef_type = new entity("IfcTrapeziumProfileDef", false, 1143, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcTypeObject_type = new entity("IfcTypeObject", false, 1153, IFC4X2_IfcObjectDefinition_type);
IFC4X2_IfcTypeProcess_type = new entity("IfcTypeProcess", true, 1154, IFC4X2_IfcTypeObject_type);
IFC4X2_IfcTypeProduct_type = new entity("IfcTypeProduct", false, 1155, IFC4X2_IfcTypeObject_type);
IFC4X2_IfcTypeResource_type = new entity("IfcTypeResource", true, 1156, IFC4X2_IfcTypeObject_type);
IFC4X2_IfcUShapeProfileDef_type = new entity("IfcUShapeProfileDef", false, 1167, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcVector_type = new entity("IfcVector", false, 1173, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcVertexLoop_type = new entity("IfcVertexLoop", false, 1176, IFC4X2_IfcLoop_type);
IFC4X2_IfcWindowStyle_type = new entity("IfcWindowStyle", false, 1207, IFC4X2_IfcTypeProduct_type);
IFC4X2_IfcZShapeProfileDef_type = new entity("IfcZShapeProfileDef", false, 1222, IFC4X2_IfcParameterizedProfileDef_type);
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcClassification_type);
items.push_back(IFC4X2_IfcClassificationReference_type);
IFC4X2_IfcClassificationReferenceSelect_type = new select_type("IfcClassificationReferenceSelect", 166, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcClassification_type);
items.push_back(IFC4X2_IfcClassificationReference_type);
IFC4X2_IfcClassificationSelect_type = new select_type("IfcClassificationSelect", 167, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcCoordinateReferenceSystem_type);
items.push_back(IFC4X2_IfcGeometricRepresentationContext_type);
IFC4X2_IfcCoordinateReferenceSystemSelect_type = new select_type("IfcCoordinateReferenceSystemSelect", 238, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcObjectDefinition_type);
items.push_back(IFC4X2_IfcPropertyDefinition_type);
IFC4X2_IfcDefinitionSelect_type = new select_type("IfcDefinitionSelect", 284, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcDocumentInformation_type);
items.push_back(IFC4X2_IfcDocumentReference_type);
IFC4X2_IfcDocumentSelect_type = new select_type("IfcDocumentSelect", 317, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcPositiveLengthMeasure_type);
items.push_back(IFC4X2_IfcVector_type);
IFC4X2_IfcHatchLineDistanceSelect_type = new select_type("IfcHatchLineDistanceSelect", 496, items);
}
{
std::vector items; items.reserve(23);
items.push_back(IFC4X2_IfcAmountOfSubstanceMeasure_type);
items.push_back(IFC4X2_IfcAreaMeasure_type);
items.push_back(IFC4X2_IfcComplexNumber_type);
items.push_back(IFC4X2_IfcContextDependentMeasure_type);
items.push_back(IFC4X2_IfcCountMeasure_type);
items.push_back(IFC4X2_IfcDescriptiveMeasure_type);
items.push_back(IFC4X2_IfcElectricCurrentMeasure_type);
items.push_back(IFC4X2_IfcLengthMeasure_type);
items.push_back(IFC4X2_IfcLuminousIntensityMeasure_type);
items.push_back(IFC4X2_IfcMassMeasure_type);
items.push_back(IFC4X2_IfcNonNegativeLengthMeasure_type);
items.push_back(IFC4X2_IfcNormalisedRatioMeasure_type);
items.push_back(IFC4X2_IfcNumericMeasure_type);
items.push_back(IFC4X2_IfcParameterValue_type);
items.push_back(IFC4X2_IfcPlaneAngleMeasure_type);
items.push_back(IFC4X2_IfcPositiveLengthMeasure_type);
items.push_back(IFC4X2_IfcPositivePlaneAngleMeasure_type);
items.push_back(IFC4X2_IfcPositiveRatioMeasure_type);
items.push_back(IFC4X2_IfcRatioMeasure_type);
items.push_back(IFC4X2_IfcSolidAngleMeasure_type);
items.push_back(IFC4X2_IfcThermodynamicTemperatureMeasure_type);
items.push_back(IFC4X2_IfcTimeMeasure_type);
items.push_back(IFC4X2_IfcVolumeMeasure_type);
IFC4X2_IfcMeasureValue_type = new select_type("IfcMeasureValue", 610, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcPoint_type);
items.push_back(IFC4X2_IfcVertexPoint_type);
IFC4X2_IfcPointOrVertexPoint_type = new select_type("IfcPointOrVertexPoint", 713, items);
}
{
std::vector items; items.reserve(5);
items.push_back(IFC4X2_IfcCurveStyle_type);
items.push_back(IFC4X2_IfcFillAreaStyle_type);
items.push_back(IFC4X2_IfcNullStyle_type);
items.push_back(IFC4X2_IfcSurfaceStyle_type);
items.push_back(IFC4X2_IfcTextStyle_type);
IFC4X2_IfcPresentationStyleSelect_type = new select_type("IfcPresentationStyleSelect", 739, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcProductDefinitionShape_type);
items.push_back(IFC4X2_IfcRepresentationMap_type);
IFC4X2_IfcProductRepresentationSelect_type = new select_type("IfcProductRepresentationSelect", 749, items);
}
IFC4X2_IfcPropertySetDefinitionSet_type = new type_declaration("IfcPropertySetDefinitionSet", 774, new aggregation_type(aggregation_type::set_type, 1, -1, new named_type(IFC4X2_IfcPropertySetDefinition_type)));
{
std::vector items; items.reserve(17);
items.push_back(IFC4X2_IfcActorRole_type);
items.push_back(IFC4X2_IfcAppliedValue_type);
items.push_back(IFC4X2_IfcApproval_type);
items.push_back(IFC4X2_IfcConstraint_type);
items.push_back(IFC4X2_IfcContextDependentUnit_type);
items.push_back(IFC4X2_IfcConversionBasedUnit_type);
items.push_back(IFC4X2_IfcExternalInformation_type);
items.push_back(IFC4X2_IfcExternalReference_type);
items.push_back(IFC4X2_IfcMaterialDefinition_type);
items.push_back(IFC4X2_IfcOrganization_type);
items.push_back(IFC4X2_IfcPerson_type);
items.push_back(IFC4X2_IfcPersonAndOrganization_type);
items.push_back(IFC4X2_IfcPhysicalQuantity_type);
items.push_back(IFC4X2_IfcProfileDef_type);
items.push_back(IFC4X2_IfcPropertyAbstraction_type);
items.push_back(IFC4X2_IfcShapeAspect_type);
items.push_back(IFC4X2_IfcTimeSeries_type);
IFC4X2_IfcResourceObjectSelect_type = new select_type("IfcResourceObjectSelect", 893, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcExternallyDefinedTextFont_type);
items.push_back(IFC4X2_IfcPreDefinedTextFont_type);
IFC4X2_IfcTextFontSelect_type = new select_type("IfcTextFontSelect", 1101, items);
}
{
std::vector items; items.reserve(3);
items.push_back(IFC4X2_IfcDerivedMeasureValue_type);
items.push_back(IFC4X2_IfcMeasureValue_type);
items.push_back(IFC4X2_IfcSimpleValue_type);
IFC4X2_IfcValue_type = new select_type("IfcValue", 1168, items);
}
IFC4X2_IfcAdvancedFace_type = new entity("IfcAdvancedFace", false, 16, IFC4X2_IfcFaceSurface_type);
IFC4X2_IfcAlignment2DHorizontal_type = new entity("IfcAlignment2DHorizontal", false, 30, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcAlignment2DSegment_type = new entity("IfcAlignment2DSegment", true, 32, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcAlignment2DVertical_type = new entity("IfcAlignment2DVertical", false, 36, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcAlignment2DVerticalSegment_type = new entity("IfcAlignment2DVerticalSegment", true, 37, IFC4X2_IfcAlignment2DSegment_type);
IFC4X2_IfcAnnotationFillArea_type = new entity("IfcAnnotationFillArea", false, 45, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcAsymmetricIShapeProfileDef_type = new entity("IfcAsymmetricIShapeProfileDef", false, 60, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcAxis1Placement_type = new entity("IfcAxis1Placement", false, 64, IFC4X2_IfcPlacement_type);
IFC4X2_IfcAxis2Placement2D_type = new entity("IfcAxis2Placement2D", false, 66, IFC4X2_IfcPlacement_type);
IFC4X2_IfcAxis2Placement3D_type = new entity("IfcAxis2Placement3D", false, 67, IFC4X2_IfcPlacement_type);
IFC4X2_IfcBooleanResult_type = new entity("IfcBooleanResult", false, 88, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcBoundedSurface_type = new entity("IfcBoundedSurface", true, 96, IFC4X2_IfcSurface_type);
IFC4X2_IfcBoundingBox_type = new entity("IfcBoundingBox", false, 97, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcBoxedHalfSpace_type = new entity("IfcBoxedHalfSpace", false, 99, IFC4X2_IfcHalfSpaceSolid_type);
IFC4X2_IfcCShapeProfileDef_type = new entity("IfcCShapeProfileDef", false, 254, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcCartesianPoint_type = new entity("IfcCartesianPoint", false, 141, IFC4X2_IfcPoint_type);
IFC4X2_IfcCartesianPointList_type = new entity("IfcCartesianPointList", true, 142, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcCartesianPointList2D_type = new entity("IfcCartesianPointList2D", false, 143, IFC4X2_IfcCartesianPointList_type);
IFC4X2_IfcCartesianPointList3D_type = new entity("IfcCartesianPointList3D", false, 144, IFC4X2_IfcCartesianPointList_type);
IFC4X2_IfcCartesianTransformationOperator_type = new entity("IfcCartesianTransformationOperator", true, 145, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcCartesianTransformationOperator2D_type = new entity("IfcCartesianTransformationOperator2D", false, 146, IFC4X2_IfcCartesianTransformationOperator_type);
IFC4X2_IfcCartesianTransformationOperator2DnonUniform_type = new entity("IfcCartesianTransformationOperator2DnonUniform", false, 147, IFC4X2_IfcCartesianTransformationOperator2D_type);
IFC4X2_IfcCartesianTransformationOperator3D_type = new entity("IfcCartesianTransformationOperator3D", false, 148, IFC4X2_IfcCartesianTransformationOperator_type);
IFC4X2_IfcCartesianTransformationOperator3DnonUniform_type = new entity("IfcCartesianTransformationOperator3DnonUniform", false, 149, IFC4X2_IfcCartesianTransformationOperator3D_type);
IFC4X2_IfcCircleProfileDef_type = new entity("IfcCircleProfileDef", false, 160, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcClosedShell_type = new entity("IfcClosedShell", false, 168, IFC4X2_IfcConnectedFaceSet_type);
IFC4X2_IfcColourRgb_type = new entity("IfcColourRgb", false, 174, IFC4X2_IfcColourSpecification_type);
IFC4X2_IfcComplexProperty_type = new entity("IfcComplexProperty", false, 185, IFC4X2_IfcProperty_type);
IFC4X2_IfcCompositeCurveSegment_type = new entity("IfcCompositeCurveSegment", false, 190, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcConstructionResourceType_type = new entity("IfcConstructionResourceType", true, 220, IFC4X2_IfcTypeResource_type);
IFC4X2_IfcContext_type = new entity("IfcContext", true, 221, IFC4X2_IfcObjectDefinition_type);
IFC4X2_IfcCrewResourceType_type = new entity("IfcCrewResourceType", false, 249, IFC4X2_IfcConstructionResourceType_type);
IFC4X2_IfcCsgPrimitive3D_type = new entity("IfcCsgPrimitive3D", true, 251, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcCsgSolid_type = new entity("IfcCsgSolid", false, 253, IFC4X2_IfcSolidModel_type);
IFC4X2_IfcCurve_type = new entity("IfcCurve", true, 260, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcCurveBoundedPlane_type = new entity("IfcCurveBoundedPlane", false, 261, IFC4X2_IfcBoundedSurface_type);
IFC4X2_IfcCurveBoundedSurface_type = new entity("IfcCurveBoundedSurface", false, 262, IFC4X2_IfcBoundedSurface_type);
IFC4X2_IfcDirection_type = new entity("IfcDirection", false, 293, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcDistanceExpression_type = new entity("IfcDistanceExpression", false, 298, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcDoorStyle_type = new entity("IfcDoorStyle", false, 325, IFC4X2_IfcTypeProduct_type);
IFC4X2_IfcEdgeLoop_type = new entity("IfcEdgeLoop", false, 347, IFC4X2_IfcLoop_type);
IFC4X2_IfcElementQuantity_type = new entity("IfcElementQuantity", false, 380, IFC4X2_IfcQuantitySet_type);
IFC4X2_IfcElementType_type = new entity("IfcElementType", true, 381, IFC4X2_IfcTypeProduct_type);
IFC4X2_IfcElementarySurface_type = new entity("IfcElementarySurface", true, 373, IFC4X2_IfcSurface_type);
IFC4X2_IfcEllipseProfileDef_type = new entity("IfcEllipseProfileDef", false, 383, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcEventType_type = new entity("IfcEventType", false, 399, IFC4X2_IfcTypeProcess_type);
IFC4X2_IfcExtrudedAreaSolid_type = new entity("IfcExtrudedAreaSolid", false, 411, IFC4X2_IfcSweptAreaSolid_type);
IFC4X2_IfcExtrudedAreaSolidTapered_type = new entity("IfcExtrudedAreaSolidTapered", false, 412, IFC4X2_IfcExtrudedAreaSolid_type);
IFC4X2_IfcFaceBasedSurfaceModel_type = new entity("IfcFaceBasedSurfaceModel", false, 414, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcFillAreaStyleHatching_type = new entity("IfcFillAreaStyleHatching", false, 433, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcFillAreaStyleTiles_type = new entity("IfcFillAreaStyleTiles", false, 434, IFC4X2_IfcGeometricRepresentationItem_type);
IFC4X2_IfcFixedReferenceSweptAreaSolid_type = new entity("IfcFixedReferenceSweptAreaSolid", false, 442, IFC4X2_IfcSweptAreaSolid_type);
IFC4X2_IfcFurnishingElementType_type = new entity("IfcFurnishingElementType", false, 473, IFC4X2_IfcElementType_type);
IFC4X2_IfcFurnitureType_type = new entity("IfcFurnitureType", false, 475, IFC4X2_IfcFurnishingElementType_type);
IFC4X2_IfcGeographicElementType_type = new entity("IfcGeographicElementType", false, 478, IFC4X2_IfcElementType_type);
IFC4X2_IfcGeometricCurveSet_type = new entity("IfcGeometricCurveSet", false, 480, IFC4X2_IfcGeometricSet_type);
IFC4X2_IfcIShapeProfileDef_type = new entity("IfcIShapeProfileDef", false, 527, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcIndexedPolygonalFace_type = new entity("IfcIndexedPolygonalFace", false, 510, IFC4X2_IfcTessellatedItem_type);
IFC4X2_IfcIndexedPolygonalFaceWithVoids_type = new entity("IfcIndexedPolygonalFaceWithVoids", false, 511, IFC4X2_IfcIndexedPolygonalFace_type);
IFC4X2_IfcLShapeProfileDef_type = new entity("IfcLShapeProfileDef", false, 577, IFC4X2_IfcParameterizedProfileDef_type);
IFC4X2_IfcLaborResourceType_type = new entity("IfcLaborResourceType", false, 536, IFC4X2_IfcConstructionResourceType_type);
IFC4X2_IfcLine_type = new entity("IfcLine", false, 563, IFC4X2_IfcCurve_type);
IFC4X2_IfcManifoldSolidBrep_type = new entity("IfcManifoldSolidBrep", true, 583, IFC4X2_IfcSolidModel_type);
IFC4X2_IfcObject_type = new entity("IfcObject", true, 646, IFC4X2_IfcObjectDefinition_type);
IFC4X2_IfcOffsetCurve_type = new entity("IfcOffsetCurve", true, 655, IFC4X2_IfcCurve_type);
IFC4X2_IfcOffsetCurve2D_type = new entity("IfcOffsetCurve2D", false, 656, IFC4X2_IfcOffsetCurve_type);
IFC4X2_IfcOffsetCurve3D_type = new entity("IfcOffsetCurve3D", false, 657, IFC4X2_IfcOffsetCurve_type);
IFC4X2_IfcOffsetCurveByDistances_type = new entity("IfcOffsetCurveByDistances", false, 658, IFC4X2_IfcOffsetCurve_type);
IFC4X2_IfcPcurve_type = new entity("IfcPcurve", false, 675, IFC4X2_IfcCurve_type);
IFC4X2_IfcPlanarBox_type = new entity("IfcPlanarBox", false, 701, IFC4X2_IfcPlanarExtent_type);
IFC4X2_IfcPlane_type = new entity("IfcPlane", false, 704, IFC4X2_IfcElementarySurface_type);
IFC4X2_IfcPreDefinedColour_type = new entity("IfcPreDefinedColour", true, 726, IFC4X2_IfcPreDefinedItem_type);
IFC4X2_IfcPreDefinedCurveFont_type = new entity("IfcPreDefinedCurveFont", true, 727, IFC4X2_IfcPreDefinedItem_type);
IFC4X2_IfcPreDefinedPropertySet_type = new entity("IfcPreDefinedPropertySet", true, 730, IFC4X2_IfcPropertySetDefinition_type);
IFC4X2_IfcProcedureType_type = new entity("IfcProcedureType", false, 742, IFC4X2_IfcTypeProcess_type);
IFC4X2_IfcProcess_type = new entity("IfcProcess", true, 744, IFC4X2_IfcObject_type);
IFC4X2_IfcProduct_type = new entity("IfcProduct", true, 746, IFC4X2_IfcObject_type);
IFC4X2_IfcProject_type = new entity("IfcProject", false, 754, IFC4X2_IfcContext_type);
IFC4X2_IfcProjectLibrary_type = new entity("IfcProjectLibrary", false, 759, IFC4X2_IfcContext_type);
IFC4X2_IfcPropertyBoundedValue_type = new entity("IfcPropertyBoundedValue", false, 764, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertyEnumeratedValue_type = new entity("IfcPropertyEnumeratedValue", false, 767, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertyListValue_type = new entity("IfcPropertyListValue", false, 769, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertyReferenceValue_type = new entity("IfcPropertyReferenceValue", false, 770, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertySet_type = new entity("IfcPropertySet", false, 771, IFC4X2_IfcPropertySetDefinition_type);
IFC4X2_IfcPropertySetTemplate_type = new entity("IfcPropertySetTemplate", false, 775, IFC4X2_IfcPropertyTemplateDefinition_type);
IFC4X2_IfcPropertySingleValue_type = new entity("IfcPropertySingleValue", false, 777, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertyTableValue_type = new entity("IfcPropertyTableValue", false, 778, IFC4X2_IfcSimpleProperty_type);
IFC4X2_IfcPropertyTemplate_type = new entity("IfcPropertyTemplate", true, 779, IFC4X2_IfcPropertyTemplateDefinition_type);
IFC4X2_IfcProxy_type = new entity("IfcProxy", false, 787, IFC4X2_IfcProduct_type);
IFC4X2_IfcRectangleHollowProfileDef_type = new entity("IfcRectangleHollowProfileDef", false, 812, IFC4X2_IfcRectangleProfileDef_type);
IFC4X2_IfcRectangularPyramid_type = new entity("IfcRectangularPyramid", false, 814, IFC4X2_IfcCsgPrimitive3D_type);
IFC4X2_IfcRectangularTrimmedSurface_type = new entity("IfcRectangularTrimmedSurface", false, 815, IFC4X2_IfcBoundedSurface_type);
IFC4X2_IfcReinforcementDefinitionProperties_type = new entity("IfcReinforcementDefinitionProperties", false, 824, IFC4X2_IfcPreDefinedPropertySet_type);
IFC4X2_IfcRelAssigns_type = new entity("IfcRelAssigns", true, 836, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelAssignsToActor_type = new entity("IfcRelAssignsToActor", false, 837, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssignsToControl_type = new entity("IfcRelAssignsToControl", false, 838, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssignsToGroup_type = new entity("IfcRelAssignsToGroup", false, 839, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssignsToGroupByFactor_type = new entity("IfcRelAssignsToGroupByFactor", false, 840, IFC4X2_IfcRelAssignsToGroup_type);
IFC4X2_IfcRelAssignsToProcess_type = new entity("IfcRelAssignsToProcess", false, 841, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssignsToProduct_type = new entity("IfcRelAssignsToProduct", false, 842, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssignsToResource_type = new entity("IfcRelAssignsToResource", false, 843, IFC4X2_IfcRelAssigns_type);
IFC4X2_IfcRelAssociates_type = new entity("IfcRelAssociates", true, 844, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelAssociatesApproval_type = new entity("IfcRelAssociatesApproval", false, 845, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelAssociatesClassification_type = new entity("IfcRelAssociatesClassification", false, 846, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelAssociatesConstraint_type = new entity("IfcRelAssociatesConstraint", false, 847, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelAssociatesDocument_type = new entity("IfcRelAssociatesDocument", false, 848, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelAssociatesLibrary_type = new entity("IfcRelAssociatesLibrary", false, 849, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelAssociatesMaterial_type = new entity("IfcRelAssociatesMaterial", false, 850, IFC4X2_IfcRelAssociates_type);
IFC4X2_IfcRelConnects_type = new entity("IfcRelConnects", true, 852, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelConnectsElements_type = new entity("IfcRelConnectsElements", false, 853, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelConnectsPathElements_type = new entity("IfcRelConnectsPathElements", false, 854, IFC4X2_IfcRelConnectsElements_type);
IFC4X2_IfcRelConnectsPortToElement_type = new entity("IfcRelConnectsPortToElement", false, 856, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelConnectsPorts_type = new entity("IfcRelConnectsPorts", false, 855, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelConnectsStructuralActivity_type = new entity("IfcRelConnectsStructuralActivity", false, 857, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelConnectsStructuralMember_type = new entity("IfcRelConnectsStructuralMember", false, 858, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelConnectsWithEccentricity_type = new entity("IfcRelConnectsWithEccentricity", false, 859, IFC4X2_IfcRelConnectsStructuralMember_type);
IFC4X2_IfcRelConnectsWithRealizingElements_type = new entity("IfcRelConnectsWithRealizingElements", false, 860, IFC4X2_IfcRelConnectsElements_type);
IFC4X2_IfcRelContainedInSpatialStructure_type = new entity("IfcRelContainedInSpatialStructure", false, 861, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelCoversBldgElements_type = new entity("IfcRelCoversBldgElements", false, 862, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelCoversSpaces_type = new entity("IfcRelCoversSpaces", false, 863, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelDeclares_type = new entity("IfcRelDeclares", false, 864, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelDecomposes_type = new entity("IfcRelDecomposes", true, 865, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelDefines_type = new entity("IfcRelDefines", true, 866, IFC4X2_IfcRelationship_type);
IFC4X2_IfcRelDefinesByObject_type = new entity("IfcRelDefinesByObject", false, 867, IFC4X2_IfcRelDefines_type);
IFC4X2_IfcRelDefinesByProperties_type = new entity("IfcRelDefinesByProperties", false, 868, IFC4X2_IfcRelDefines_type);
IFC4X2_IfcRelDefinesByTemplate_type = new entity("IfcRelDefinesByTemplate", false, 869, IFC4X2_IfcRelDefines_type);
IFC4X2_IfcRelDefinesByType_type = new entity("IfcRelDefinesByType", false, 870, IFC4X2_IfcRelDefines_type);
IFC4X2_IfcRelFillsElement_type = new entity("IfcRelFillsElement", false, 871, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelFlowControlElements_type = new entity("IfcRelFlowControlElements", false, 872, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelInterferesElements_type = new entity("IfcRelInterferesElements", false, 873, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelNests_type = new entity("IfcRelNests", false, 874, IFC4X2_IfcRelDecomposes_type);
IFC4X2_IfcRelPositions_type = new entity("IfcRelPositions", false, 875, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelProjectsElement_type = new entity("IfcRelProjectsElement", false, 876, IFC4X2_IfcRelDecomposes_type);
IFC4X2_IfcRelReferencedInSpatialStructure_type = new entity("IfcRelReferencedInSpatialStructure", false, 877, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelSequence_type = new entity("IfcRelSequence", false, 878, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelServicesBuildings_type = new entity("IfcRelServicesBuildings", false, 879, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelSpaceBoundary_type = new entity("IfcRelSpaceBoundary", false, 880, IFC4X2_IfcRelConnects_type);
IFC4X2_IfcRelSpaceBoundary1stLevel_type = new entity("IfcRelSpaceBoundary1stLevel", false, 881, IFC4X2_IfcRelSpaceBoundary_type);
IFC4X2_IfcRelSpaceBoundary2ndLevel_type = new entity("IfcRelSpaceBoundary2ndLevel", false, 882, IFC4X2_IfcRelSpaceBoundary1stLevel_type);
IFC4X2_IfcRelVoidsElement_type = new entity("IfcRelVoidsElement", false, 883, IFC4X2_IfcRelDecomposes_type);
IFC4X2_IfcReparametrisedCompositeCurveSegment_type = new entity("IfcReparametrisedCompositeCurveSegment", false, 884, IFC4X2_IfcCompositeCurveSegment_type);
IFC4X2_IfcResource_type = new entity("IfcResource", true, 889, IFC4X2_IfcObject_type);
IFC4X2_IfcRevolvedAreaSolid_type = new entity("IfcRevolvedAreaSolid", false, 896, IFC4X2_IfcSweptAreaSolid_type);
IFC4X2_IfcRevolvedAreaSolidTapered_type = new entity("IfcRevolvedAreaSolidTapered", false, 897, IFC4X2_IfcRevolvedAreaSolid_type);
IFC4X2_IfcRightCircularCone_type = new entity("IfcRightCircularCone", false, 898, IFC4X2_IfcCsgPrimitive3D_type);
IFC4X2_IfcRightCircularCylinder_type = new entity("IfcRightCircularCylinder", false, 899, IFC4X2_IfcCsgPrimitive3D_type);
IFC4X2_IfcSectionedSolid_type = new entity("IfcSectionedSolid", true, 916, IFC4X2_IfcSolidModel_type);
IFC4X2_IfcSectionedSolidHorizontal_type = new entity("IfcSectionedSolidHorizontal", false, 917, IFC4X2_IfcSectionedSolid_type);
IFC4X2_IfcSimplePropertyTemplate_type = new entity("IfcSimplePropertyTemplate", false, 938, IFC4X2_IfcPropertyTemplate_type);
IFC4X2_IfcSpatialElement_type = new entity("IfcSpatialElement", true, 969, IFC4X2_IfcProduct_type);
IFC4X2_IfcSpatialElementType_type = new entity("IfcSpatialElementType", true, 970, IFC4X2_IfcTypeProduct_type);
IFC4X2_IfcSpatialStructureElement_type = new entity("IfcSpatialStructureElement", true, 971, IFC4X2_IfcSpatialElement_type);
IFC4X2_IfcSpatialStructureElementType_type = new entity("IfcSpatialStructureElementType", true, 972, IFC4X2_IfcSpatialElementType_type);
IFC4X2_IfcSpatialZone_type = new entity("IfcSpatialZone", false, 973, IFC4X2_IfcSpatialElement_type);
IFC4X2_IfcSpatialZoneType_type = new entity("IfcSpatialZoneType", false, 974, IFC4X2_IfcSpatialElementType_type);
IFC4X2_IfcSphere_type = new entity("IfcSphere", false, 980, IFC4X2_IfcCsgPrimitive3D_type);
IFC4X2_IfcSphericalSurface_type = new entity("IfcSphericalSurface", false, 981, IFC4X2_IfcElementarySurface_type);
IFC4X2_IfcStructuralActivity_type = new entity("IfcStructuralActivity", true, 993, IFC4X2_IfcProduct_type);
IFC4X2_IfcStructuralItem_type = new entity("IfcStructuralItem", true, 1005, IFC4X2_IfcProduct_type);
IFC4X2_IfcStructuralMember_type = new entity("IfcStructuralMember", true, 1020, IFC4X2_IfcStructuralItem_type);
IFC4X2_IfcStructuralReaction_type = new entity("IfcStructuralReaction", true, 1025, IFC4X2_IfcStructuralActivity_type);
IFC4X2_IfcStructuralSurfaceMember_type = new entity("IfcStructuralSurfaceMember", false, 1030, IFC4X2_IfcStructuralMember_type);
IFC4X2_IfcStructuralSurfaceMemberVarying_type = new entity("IfcStructuralSurfaceMemberVarying", false, 1032, IFC4X2_IfcStructuralSurfaceMember_type);
IFC4X2_IfcStructuralSurfaceReaction_type = new entity("IfcStructuralSurfaceReaction", false, 1033, IFC4X2_IfcStructuralReaction_type);
IFC4X2_IfcSubContractResourceType_type = new entity("IfcSubContractResourceType", false, 1039, IFC4X2_IfcConstructionResourceType_type);
IFC4X2_IfcSurfaceCurve_type = new entity("IfcSurfaceCurve", false, 1043, IFC4X2_IfcCurve_type);
IFC4X2_IfcSurfaceCurveSweptAreaSolid_type = new entity("IfcSurfaceCurveSweptAreaSolid", false, 1044, IFC4X2_IfcSweptAreaSolid_type);
IFC4X2_IfcSurfaceOfLinearExtrusion_type = new entity("IfcSurfaceOfLinearExtrusion", false, 1047, IFC4X2_IfcSweptSurface_type);
IFC4X2_IfcSurfaceOfRevolution_type = new entity("IfcSurfaceOfRevolution", false, 1048, IFC4X2_IfcSweptSurface_type);
IFC4X2_IfcSystemFurnitureElementType_type = new entity("IfcSystemFurnitureElementType", false, 1069, IFC4X2_IfcFurnishingElementType_type);
IFC4X2_IfcTask_type = new entity("IfcTask", false, 1077, IFC4X2_IfcProcess_type);
IFC4X2_IfcTaskType_type = new entity("IfcTaskType", false, 1081, IFC4X2_IfcTypeProcess_type);
IFC4X2_IfcTessellatedFaceSet_type = new entity("IfcTessellatedFaceSet", true, 1095, IFC4X2_IfcTessellatedItem_type);
IFC4X2_IfcToroidalSurface_type = new entity("IfcToroidalSurface", false, 1131, IFC4X2_IfcElementarySurface_type);
IFC4X2_IfcTransportElementType_type = new entity("IfcTransportElementType", false, 1141, IFC4X2_IfcElementType_type);
IFC4X2_IfcTriangulatedFaceSet_type = new entity("IfcTriangulatedFaceSet", false, 1144, IFC4X2_IfcTessellatedFaceSet_type);
IFC4X2_IfcTriangulatedIrregularNetwork_type = new entity("IfcTriangulatedIrregularNetwork", false, 1145, IFC4X2_IfcTriangulatedFaceSet_type);
IFC4X2_IfcWindowLiningProperties_type = new entity("IfcWindowLiningProperties", false, 1202, IFC4X2_IfcPreDefinedPropertySet_type);
IFC4X2_IfcWindowPanelProperties_type = new entity("IfcWindowPanelProperties", false, 1205, IFC4X2_IfcPreDefinedPropertySet_type);
{
std::vector items; items.reserve(3);
items.push_back(IFC4X2_IfcMeasureWithUnit_type);
items.push_back(IFC4X2_IfcReference_type);
items.push_back(IFC4X2_IfcValue_type);
IFC4X2_IfcAppliedValueSelect_type = new select_type("IfcAppliedValueSelect", 48, items);
}
{
std::vector items; items.reserve(2);
items.push_back(IFC4X2_IfcAxis2Placement2D_type);
items.push_back(IFC4X2_IfcAxis2Placement3D_type);
IFC4X2_IfcAxis2Placement_type = new select_type("IfcAxis2Placement", 65, items);
}
{
std::vector